1 The Manchester Baby, Small Scale Experimental Machine Mon Jul 28, 2014 4:31 pm
Admin
Admin
The study of ancestry can teach us a great deal. Knowing the origins of something gives us a renewed appreciation for where we are today, and affords us a better perspective on where we are going tomorrow.
Today I stood and basked in the awesome glory of the Manchester Small Scale Experimental Machine (SSEM) nicknamed the ‘Baby‘. Built 1948, it was the first ever electronic computer system in the world and has been on display here at the Manchester Institute of Science and Technology. I was dismayed to learn that the computer is being packed away in to storage, but the kind staff allowed me up close to pay my respects and bring you these great photos.
Programming the Small Scale Experimental Machine
Having spent much of last weekend writing my first programs for this great ancestor of modern computing, I find renewed appreciation for the technology that is available to us now. I have written code for a few computers, including some home consoles like the Super Nintendo, but nothing could have prepared me for the Manchester Baby.
Why? Well, firstly, it has a humble instruction set consisting of 7 valid instructions, with only ONEarithmetic operation – subtract! In order to add two values, a programmer would need to use the form: -(-x-y). Software multiplication can be achieved by creating a loop which repeatedly ‘adds’ in this manner – don’t even ask me about divide!
Another exciting fact about the SSEMis it’s memory store. By today’s standards it would be considered backward.
No, I mean that it’s memory is literally a mirror image of how we might expect today’s computers to store binary numbers, with the least significant bit (LSB) is on theleft and the most significant bit (MBR) on the right!
The memory store itself is made up of 32 rows of 32-bit words, giving the SSEM 128 bytes (0.125 KB) of total memory for both program and data. Not a lot when you compare it to computers available today. To put everything back in perspective, the SSEM executes 1,100 instructions per second. Yet my Apple iPhone used to photograph this exhibit can execute 620,000,000 instruction per second and has 8,000,000 KB of storage and (AND!) … it fits right in my pocket.
How To Run Virtual SSEM Programs At Home
[ See The Source Code For This Example Here ]
But you don’t have to travel all the way to Manchester to use the SSEM. David Sharp has developed a fantastic Java based SSEM simulator which you can run directly through your browser. Not only does it include the imagery of the original machine, but includes several working program examples and the ability to import/export memory snapshots and assembly code.
Conclusion
All in all it was a very humbling experience. I am told that the Baby will go back on display in about 7 months and I strongly urge others to see this exhibit. While the Small Scale Experimental Machine may not be all that impressive technically, it provided a solid blueprint upon which all modern computers are built. In doing so, it leaves a timeless mark in the computer world that will live on beyond it’s physical components. These principles seem far removed when I’m sat at my desk working with luxuriously high-level language like PHP. But sometimes it helps to remind myself of the sheer toil and pain it has taken to get to this stage.
Extras
Here is the source code to the ‘TheFraj’ example featured in this article, a scrolling marquee based on an example program that comes with the simulator. Try saving this into a file and importing to the simulator!]
Today I stood and basked in the awesome glory of the Manchester Small Scale Experimental Machine (SSEM) nicknamed the ‘Baby‘. Built 1948, it was the first ever electronic computer system in the world and has been on display here at the Manchester Institute of Science and Technology. I was dismayed to learn that the computer is being packed away in to storage, but the kind staff allowed me up close to pay my respects and bring you these great photos.
Programming the Small Scale Experimental Machine
Having spent much of last weekend writing my first programs for this great ancestor of modern computing, I find renewed appreciation for the technology that is available to us now. I have written code for a few computers, including some home consoles like the Super Nintendo, but nothing could have prepared me for the Manchester Baby.
Why? Well, firstly, it has a humble instruction set consisting of 7 valid instructions, with only ONEarithmetic operation – subtract! In order to add two values, a programmer would need to use the form: -(-x-y). Software multiplication can be achieved by creating a loop which repeatedly ‘adds’ in this manner – don’t even ask me about divide!
Another exciting fact about the SSEMis it’s memory store. By today’s standards it would be considered backward.
How Binary Numbers are Usually Stored |
How SSEM Stores Binary Numbers |
The memory store itself is made up of 32 rows of 32-bit words, giving the SSEM 128 bytes (0.125 KB) of total memory for both program and data. Not a lot when you compare it to computers available today. To put everything back in perspective, the SSEM executes 1,100 instructions per second. Yet my Apple iPhone used to photograph this exhibit can execute 620,000,000 instruction per second and has 8,000,000 KB of storage and (AND!) … it fits right in my pocket.
How To Run Virtual SSEM Programs At Home
[ See The Source Code For This Example Here ]
But you don’t have to travel all the way to Manchester to use the SSEM. David Sharp has developed a fantastic Java based SSEM simulator which you can run directly through your browser. Not only does it include the imagery of the original machine, but includes several working program examples and the ability to import/export memory snapshots and assembly code.
All in all it was a very humbling experience. I am told that the Baby will go back on display in about 7 months and I strongly urge others to see this exhibit. While the Small Scale Experimental Machine may not be all that impressive technically, it provided a solid blueprint upon which all modern computers are built. In doing so, it leaves a timeless mark in the computer world that will live on beyond it’s physical components. These principles seem far removed when I’m sat at my desk working with luxuriously high-level language like PHP. But sometimes it helps to remind myself of the sheer toil and pain it has taken to get to this stage.
Extras
Here is the source code to the ‘TheFraj’ example featured in this article, a scrolling marquee based on an example program that comes with the simulator. Try saving this into a file and importing to the simulator!]