[Coco] Linville's ramblings on assembly vs machine code
RETRO Innovations
go4retro at go4retro.com
Tue Jul 11 13:30:57 EDT 2017
To clarify, I am not suggesting that self modifying code is relevant or
should be condoned in today's pipelined and multi-threaded CPUs. It also
may not have relevance in older systems like OS/9. But, for maximum
performance on smaller CPUs, it is a useful tool that should not be
dismissed out of hand.
Predictably, people tend to take today's best practices and
automatically retroactively apply them:
"Jim, do you recommend self modifying code in this Linux driver?"
"Absolutely not. Self Modifying Code is fraught with support concerns,
won't work in the Linux driver model anyway, and is considered bad
programming form"
"Aha! How do you then explain using self modifying code in your latest
Coco application? Two faced liar!"
"Uh, can I smack you now?"
For the given CPU architecture, there are a set of tricks and tips
useful to wrong best performance out of the CPU. Competent developers
know and consider all of them when developing for that platform.
That said, today's concerns around security of IoT devices may force
vendors to eliminate Von Neumann architectures from embedded CPUs used
in IoT devices, and with it, any self modifying code capability.
--------------------------------------------------------------------------------
On the main topic:
Dave et al, it looks like CocoNut John Linnville has a distinct (and
perhaps dismissive) perspective on our ramblings on list:
For those not subscribed to the CoCo mailing list, there is a raging
discussion there that was inspired by my tech segment in Episode 25.
It seems that not everyone accepts my premise that "machine
language" and "assembly language" are really just two forms of the
same base language!
I'll probably wait until Episode 26 to respond, but in the meantime
it is kinda fun watching people contort themselves to 'prove' that
knowing that there is more than one form of a given instruction or
that being able to distinguish code sections from data sections is
simultaneously both vital to "machine language" and somehow
completely foreign to "assembly language"...
https://www.facebook.com/groups/1606095809633762/?hc_ref=NEWSFEED
We are evidently the Coco Contortionists!
Be careful, there is some trolling afoot, methinks...
Jim
More information about the Coco
mailing list