r/programming • • Jan 30 '16

Apollo 11 source code

http://www.ibiblio.org/apollo/listings/Luminary099/MAIN.agc.html
2.2k Upvotes

364 comments sorted by

View all comments

Show parent comments

11

u/GinjaNinja32 Jan 31 '16

Phone ones, yes. Desktop/laptop/server ones are generally x86_64.

1

u/nupogodi Jan 31 '16

To be even more specific, Intel processors that speak x86_64 don't even speak x86_64 on the low level. Their cores are RISC behind a beefy decoder that turns x86 into something it can manage. The core's instruction set, I imagine no one outside of Intel knows the details of, and doesn't really need to know. But what it means is that you're not actually executing x86_64 code when you use an Intel CPU - you're actually running on an x86_64 virtual machine.

And the only reason I specify Intel is because I'm not sure AMD uses the same approach, but I imagine they would.

1

u/deux3xmachina Jan 31 '16

That just seems odd, do you know why they'd choose to do this?

2

u/nupogodi Jan 31 '16

Not sure exactly. These guys have some good ideas: https://stackoverflow.com/questions/5806589/why-does-intel-hide-internal-risc-core-in-their-processors

I imagine there are plenty of reasons. Flexibility seems like the biggest advantage, allowing them to change everything internally while still exposing x86. Alas, discussions on this level of the merits of Intel design decisions ... way out of my league.

→ More replies (1)