Saturday, January 27, 2024

Assembly Language

 Assembly Language

By Bobby Neal Winters

I almost began this piece by staying, “Humans run stories like computers run programs.” It gets toward my point, but it falls into some dangerous territory. Please allow me to explain.

It’s fashionable to say that “human bodies are machines” or “human brains are computers.” The truth is that humans created machines; humans created computers. One might, and I mean might, truthfully say that there is an abstract concept of which both human bodies and machines are instances of; and one might say a similar thing about brains and computers; but don’t actually know that. And--even if it’s found out to be true--statements such as these lead us toward treating humans like objects.

Because of this, I will begin instead by saying that language, stories, and narratives are very important to human well being.

These thoughts come at a time when I am simultaneously putting together a Bible study on the book of Genesis and learning assembly language for a microprocessor.

There is a common thread between these two: Interpretation. 

Before we get too far into the weeds, there are people who say that Genesis doesn’t have to be interpreted. It’s just there.  Read it; it’s a historical account; that’s the way it happened.  The devil tempted Eve with the apple and she made Adam eat it.

Well, it doesn’t say “devil.” It says “serpent.” You’ve just done some interpretation.

The whole story of the Fall, for example, is just loaded with ambiguity. From just reading the text, you can’t tell whether Adam is standing right by Eve when the Serpent is encouraging her to take the apple.  We assume Eve is alone with the Serpent because that’s the way it feels, but it’s an assumption. We interpret it that way because of our experience of the way operators like the Serpent do things.

But it’s an interpretation.

Okay, so let’s now go to connect this with assembly language.  I won’t get technical.  However technical what follows seems, trust me, I am sparing you extraneous details.  

Really.

To make it simple, let me say that your computer, down in its heart, has memory (which humans chose to name that way) and a processor.  I like to think of the memory as a stack of rows of pigeon holes.  Some of that memory--some of those pigeon holes--are special.  We call them “registers.” Think of a register as a row of pigeon holes.

Each pigeon hole in a register will either contain a one or a zero.  In reality, it is either voltage written HIGH or voltage written LOW.  For the sake of simplicity of language, we say one and zero.

Programming in assembly language consists of writing programs that copy the contents of one register to another and modify the contents in various imaginative ways. (Do not ask me to unpack that last clause unless you are ready to take a course.) 

I was careful not to refer to the contents of a register as a number.  Doing that is an interpretation.

A register can be a number; it can be a collection of logical units; it can be a letter of the alphabet or other alphanumeric character.

In the course of programming, it can be useful to make one of these interpretations or another, but for the most part, it’s just easier to think about moving the contents of pigeon holes around.

I am writing functions in assembly language that I then access from a higher level language (for you geeks out there it’s C).  That higher level language needs to know what to expect.  It needs to know the type of information coming out so it knows which and how many registers to look at for the answer.

The higher level language needs to interpret the registers to know what their contents mean.

The preacher, the teacher, the reader must interpret the words of the story to know what they mean.  Whatever interpretation given is going to depend a lot on the inner life of whoever is doing the interpretation.  Their personal experience will color it.

This is why we need to be guided by the thoughts of others, by the wisdom of the Saints, and, dare I say, by the Holy Spirit.

Just as the human body is not a machine; the human brain is not a computer; the stories in the Bible are more than just words written one after another. They are the path to meaning.

Bobby Winters, a native of Harden City, Oklahoma, blogs at redneckmath.blogspot.com and okieinexile.blogspot.com. He invites you to “like” the National Association of Lawn Mowers on Facebook. Search for him by name on YouTube.



No comments: