Post #1255117
2026-04-16 12:07 UTC
Replies (11)
-
@ellie@ellieayla.net 2026-04-16 12:11
@nedbat@hachyderm.io modern x86 is nothing but a comforting lie implemented in microcode
-
@hynek@mastodon.social 2026-04-16 12:53
@nedbat@hachyderm.io Very relatedly: https://queue.acm.org/detail.cfm?id=3212479
-
@webology@mastodon.social 2026-04-16 13:28
@nedbat@hachyderm.io I'm told enough to remind people of this too. I was really into game programming books and they are 25% to 50% assembly to get around C's "slowness" during most of the 90s and 00s.
-
@guenther@chaos.social 2026-04-16 14:15
@nedbat@hachyderm.io Most of these concepts, as well as most of the CPUs mentioned in that article, are older than today's CS graduates.
-
@raymaccarthy@mastodon.ie 2026-04-16 16:56
@nedbat@hachyderm.io C doesn't teach you anything about anything. It's a tool to create programs as independent as possible from assembler. You need to learn how to analyse, design and program. All more important than a particular language. Knowing how the CPU really works may be important for an 8051 (Harvard) or a PIC16/18 (essentially no stack).
-
@christophehenry@mastodon.social 2026-04-16 17:24
@nedbat@hachyderm.io Interesting reading. I was never taught all that at school. Not entirely related to μP but still on the myths of "C teaches you…" one of the stupidest things I've heard in my short career is that C teaches you to manage your memory and Java makes sloppy devs because it abstracts it away…
-
@psistarpsiii@tacobelllabs.net 2026-04-17 01:56
@nedbat@hachyderm.io this was a piece I needed, thanks!
-
@TimWardCam@c.im 2026-04-17 12:00
@nedbat@hachyderm.io Once Upon A Time to see how computers really worked you could code in assembler and watch the results on a logic analyser and/or oscilloscope. But that went out of the window decades ago. The rot started to set in when CPUs were no longer in DIL 0.1" packages, progressed with the invention of on-chip caches (so that not every memory fetch was a visible bus cycle), and has got vastly worse since (with CPUs no longer executing the instructions you wrote, either in the order you wrote them or, sometimes, at all).
-
@namedbird@noc.social 2026-04-19 10:46
@nedbat@hachyderm.io That was... DENSE! But it is also a very interesting reminder that performance isn't straightforward. Perhaps software developers should be thought more of these things to make them think of how to make their code run fast and efficient. Even though computers get faster and faster, it's no use if software gets slower and slower at a faster rate.
-
@MikeStok@mstdn.ca 2026-05-14 16:19
@nedbat@hachyderm.io @philip@mastodon.mallegolhansen.com then there are the AI cores that just guess the result and hope it’s close enough (first seen in pentium floating point) 😉
-
@trisweb@m.trisweb.com 2026-05-14 22:58
@nedbat@hachyderm.io *C is a high level language*!