top of page
Search

Computers and Language and Magic

  • Writer: davidcarew19
    davidcarew19
  • Jun 22, 2023
  • 3 min read

Updated: Sep 9, 2023

One way to look at this is to realize that the concept of a stored program (von neumann) computer implies an “instruction set” for that computer. The instruction set for a computer is an artifact of the computer’s wiring and circuitry— but this “instruction set” is actually and at the same time a language of sorts.


An instruction set has a binary code for “LOAD” which causes electrical circuitry to make an arrangement of switches for a special location in the CPU called a register or an accumulator to be the same as a set of switches in some part of the the computer’s physical memory — which is itself essentially an array of millions upon millions of switches taken as sets of 16 or 32 or 64 or 128 switches at a time—each set of switches is called a byte (half word) or a word or a quadword or some other term like double quadword. And of course each individual switch is always on or off (1 or 0) in value.


There is an operation code (aka op code) similar to LOAD in the instruction set named “STORE” —which transfers a pattern of switch on-off settings (a binary value) from a CPU register into a set of switches (a byte or word or double word or quad-word etc.) in memory. There are other operations wired into the computer such as ADD which will add a some value to a CPU register…also there are so-called logical operations wired into this language, such as “NOT” which reverses the value (“off” becomes “on” and “on” becomes “off”) for a set of switches of some particular size (called the “word size” of some particular computer's instruction set.


And so on. Taken together, this instruction set is a “language” of things that you can specify the computer to do, that are already encoded into the hardware. This language is all “binary”— patterns of “on-or-off-ness” contained in a specifically-sized set of switches (aka word size) relevant to the wiring in a particular computer make and model.


When you map the binary instruction set operation code patterns (i.e. the binary pattern of LOAD operation code, and the pattern of STORE op code, and so forth)— when you take all of these binary codes and map them to mnemonics that are meaningful to humans— i.e. the on-or-off-ness pattern of the op code 3 becomes “LOAD” and the binary op code for STORE becomes specifiable by the programmer as “STORE” rather than as the binary switch pattern that is the op code value 17, and so on for all the instruction set operation codes (aka op codes)— When this is done, it is nothing more than elucidating the “instruction set” built into the hardware. However, systematically making something that translates “LOAD” and “STORE” and “ADD” and “NOT”, and so forth, into instruction set op codes for a particular instruction set, actually creates the “assembly language” translator for that particular computer instruction set.


SO all computers are created as wired-up instantiations of an instruction set— which is the same as saying that something very much like assembly language (one-for-one mappable to and from assembly language) is already "wired into" the computer.


THAT IS TO SAY: Computers themselves are the very hardware embodiment of this primitive but powerful (assembly) language. Human beings are empowered to store meaning and to create and execute complex and appropriate behavior with software, based upon the stunning reality that computer hardware itself is language made of matter, with the power to act directly on matter in a way that our own magnificent "natural" languages cannot!


In the Middle Ages, this power was known as “magic”, wherein some incantation of language directly affected reality—turned a prince into a frog or summoned a demon to do the wizard’s bidding. Of course medieval magic was a dream, not actually real, whereas our computer programs are incantations of language that actually can and do change reality directly, through the mediation, the agency, of computer hardware. There is good etymology behind the fact that talented computer software people are called “computer wizards”. Computer software is very much akin to ancient medieval magic, except that the incantation languages are extremely specialized, and (oh yes) this magic actually works, in a limited and specific way.

 
 
 

Recent Posts

See All
Announcement Too Late

Susan K. Carew (my wife) published a book, entitled "There's a Piano in a Meadow", subtitled "And Other Family Stories". The book is...

 
 
 

Комментарии


  • Facebook
  • Twitter
  • LinkedIn

©2019 by DavidCarew. Proudly created with Wix.com

bottom of page