What "code" and programming really is...

  Some parts of this page/site are currently incomplete & will be updated asap
  Other parts will change continually so use “Refresh” in your browser !!
  There is extensive use of “Tooltips” text to support learning which do not seem to render on a Smartphone


  • The reality is that EVERY MICROPROCESSOR and EVERY COMPUTER (and system) can only ever execute ITS OWN MACHINE CODE (“Instruction Set”) !!

  • The microprocessor 1 is extremely STUPID. It is the very opposite of “intelligent” or “smart”. It is incapable of any kind of “thought” whatsoever…
  • The machine instructions that the human “feeds” to the microprocessor/computer to execute must be 100% correct 2
  • Programming at this level is essentially only manipulating numbers (arithmetic) within defined contexts and using the assembler to do it symbolically. 3 It is far easier than I ever thought it would be when I first taught myself…
  • The only thing going for the microprocessor is its ever-increasing INCREDIBLE SPEED 4 and its ability for endless REPETITION, etc, without ever making an error 5
  • Everything else is just a very sophisticated, wonderful illusion 6 (a form of virtual reality) created by clever people using clever algorithms in conjunction with, and driving increasingly complex language/script interpreters and/or language compilers
  • Part of that wonderful illusion are the increasingly powerful abilities of scripting and/or Markup Languages

Artificial Intellegence (“AI”) - So what is that all about then?

It still HAS TO COMPLY with what I said above…
To repeat: “EVERY MICROPROCESSOR and EVERY COMPUTER (and system) can only ever execute ITS OWN MACHINE CODE (“Instruction Set”)”

I also said above: “Everything else is just a very sophisticated, wonderful illusion (a form of virtual reality) created by clever people using clever algorithms in conjunction with, and driving increasingly complex language compilers”

So in the case of AI this sentiment then becomes:

  • “Everything else is just a very, very sophisticated, very wonderful illusion (a very beguiling form of virtual reality) created by very, very clever people using very, very clever algorithms in conjunction with, and driving increasingly more complex language/script interpreters and/or language compilers and packages

Talking about a microprocessor’s instruction set, there is such a thing as self-modifying code

“… code that alters its own instructions while it is executing – usually to reduce the instruction path length and improve performance or simply to reduce otherwise repetitively similar code, thus simplifying maintenance. The term is usually only applied to code where the self-modification is intentional…“    Wikipedia

A great deal about AI (including what is going in the internals of AI) will be proprietary and patented but I would be very surprised if “self-modifying algorithms” were not a part of the AI “modern miracle”7

My AI Oracle speaks…

“I tend to use scripting/interpreted languages for most things as the speed of development is so much faster (python, js, java, r, scala, clojure) then switch back to compiled if its not fast enough (c, c++) as they can be rewritten or the key functions replaced via the languages binary interface. In terms of packages, it depends; scikit learn, pandas for simple models. Pytorch and tensorflow for deep learning in python…“   Oracle_CT 8

And btw writing Web Pages, etc IS NOT “CODE” - It is “scripting”

Not at all the same thing !! Let’s be real here !!

  1. … and now there is NO SUCH THING AS A “MICROPROCESSOR” anymore !! Due to integration the microprocessor is now a (small?) part of the System-on-a-Chip 

  2. … and appropriate or there is a real danger the machine will CRASH and/or behave in a “strange and/or unexpected” manner 

  3. In “The Annotated Turing” (Wiley 2008), author Charles Petzold says, refering to Turing’s time: “In this digital age of ours we have grown used to representing all forms of information as numbers. Text, drawings, photographs, sound, music, movies – everything goes into the digitisation mill and gets stored on our computers and other devices in ever more complex arrangements of 0s and 1s…“ 

  4. The Zilog eZ80 SoC that DH uses is good for 80 mips. But even using fast static RAM with a 10nS access time, the processor must insert 1 wait-state 

  5. … any errors will originate from elsewhere, such as intrinsic errors (“bugs”) in the software, or badly designed or specified hardware or even hardware malfunctions 

  6. Arthur C Clarke’s 3rd “Law”: “Any sufficiently advanced technology is indistinguishable from magic” We live in a world full of magic & death… 

  7. One nanosecond (1nS) is one billionth of a second, so 10nS is ten billionths of a second - so the memory will respond with the data requested within ten billionths of a second of being “asked” for it by the CPU – And even this is too slow !! 

  8. AI’s capabilities are a perfect example of “emergence”… 


•  Updated: 16th May 2023 by David Husband  •  Created: 8th June 2022 by David Husband  •
© 2021 David Husband, a.k.a. Baremetal Engineer Extraordinaire
All Rights Reserved – All Trademarks & Copyrights Acknowledged
All personal information is subject to the Data Protection Act 2018 & the UK GDPR
“ad auxilium aliis ad auxilium sibi”