well today we're going to talk about the analytical engine we've already got footage in the can as it were about the principal people involved in this Charles babby J less the important thing now I think is to just give you the most General overview about how this analytical engine would have worked if only it had ever been built at the a of LEL of Symposium December 2015 200th Ann AR of her birth I actually met up with Steven Wolfram of Wolfram and Mathematica Fame who's done a very good blog on adah Loveless computer programmer there's also you'll see it in the info block again a link to all the lectures given at that 200th anniversary Symposium last but not least and it relates to this picture we're using here one of the lectures there was by Sydney who's a very very talented graphic artist she turned her attention to actually researching the babage Loveless story and has done the whole thing in a hilarious comic book she envisages as you see here Loveless as this impossible detached heroin but fearfully bright babbage's faithful assistant here's Charles Babbage short-tempered thin skinned exactly like the real Babbage but thanks to Sydney we able to actually have a picture here that I can talk to of what the analytical engine will have to look like should it ever be built it may get built but it'll be Years it'll be decades before it's ever built because one has to understand all the babbage's notation in his technical drawings and that's no mean feet anyway Sydney has decoded enough of what must happen here it is it's fantastic this is the analytical engine as it would have been I'll try and inter this for you in modern terms this sort of almost Amphitheater thing at the end here that's the CPU this is as it were your Intel chip at the end of this thing the whole Corridor looking thing of stuff behind her with a proud babage standing beside it that's the memory and if you look more carefully at this you'll find that the memory consists of thousands of positions Each of which can hold a 50 50 decimal digit number binary had not occurred to mathematicians even in the early 19th century in saying that I do know that the mathematician liit was aware of it but you can see that even if babage had been aware of it actually the Temptation will be stick to what you know we're here to do generalized arithmetic and we all know and understand decimal so yes it's a decimal machine 50 decimal places every time you want one of these numbers numbers there's an elaborate mechanical way to fetch it into the CPU and just look at the CPU itself if it has got to store these numbers temporarily before it adds them or something like that then yes you've got to have yet more of these 50 digit columns inside here to hold the numbers that are in the process of being processed roughly speaking this memory for the machine has designed was 7 m long and the whole thing is 3 m High it's the most enormous thing could you drive this with a handle by hand not a chance little picture here that Sydney's put in of a steam engine babage was going to drive the whole thing by Steam for those of you who aren't perhaps up with history of these things please remember this is the 1830s and 1840s Faraday's work on electromagnetism was just about getting underway but any idea of having electric motors and Mains electricity to drive this thing not till at least the end of the 19th century turn of the 20th when this kind of thing will become possible so yeah you wanted to drive this thing the only option would have been steam Way Beyond even a gang of humans to turn all these cogs so number one it says here the store do remember that in English notation for computers even as late as the 40s and 50s we in the UK used to call it store in the US it was was always called memory on IBM machines American usage has become Universal We Now call that memory equally very early papers on Computing in the UK certainly babage this CPU he called The Mill because you put the numbers in and you Mill them around and you add them and you subtract them and whatever they get you know roughed up and knocked into an answer it was called The Mill so that's the only bit of translation you really need so where's the program stored is that stored in this memory here no it isn't the idea was that this the cards that drove this thing would be based on well established and very reliable jackard Loom technology jackard looms weave lace and they are programmed to get the right pattern in the lace by having a set of cards that go over sensing rods and the sensing rods basically every time they sense a hole do a stitch at that position roughly speaking so by putting different whole patterns on different cards and having a succession of cards just like a succession of instructions in the program you could get a beautiful pattern to appear on your lace machine and there were even card punches available for preparing jackard cards which are I think are roughly about 30 cm long something like that so this was not a flight of fantasy this was building on existing technology you can go to a jacard la Museum in m field here in the UK you can see all of this in action you might say well how do you keep the sequence then of the program instructions on the cards you sequence them by tying your jackard cards together with binding chords Down the sides when you go to the next card you don't have to feed it in separately it's pulled along in by the cords that bind the sides of all the cards together this most amazing machine was touring complete now I've done a video on touring complete and what's the requirements to be touring complete number one you've got to be able to have arbitrary amount of memory well in principle on this you could number two you've got to have a conditional Branch statement you've got to say if this piece of data is this then do that else do this two possible routes through your program amazingly babbage's analytical engine has got if statements built into it and girl along with that whichever way you go on the if statement might need you to do as it were a go-to to a different instruction it was all done on these cards if you wanted to go to an instruction 10 ahead then the machine had to arrange to just slip 10 cards on boom boom boom boom boom you could count to 10 and then ding upward come the sensor rods on the 11th card you've done your jump and as part of being able to do a jump why can't you jump back back earlier in other words do a loop yes of course if you can do if statements you can jump backwards you can do loops and this could and did do loops as well was he a complete genius did he realize what he was doing or did he just accidentally do the right thing but this is the thing remember the program is not stored in the same place as the data as it would be on a modern VY and computer they're both in Ram I mean great steps have taken to protect your program Ram from being under overwritten once it's known that that's where the program is but in principle they both sit in the same technology whereas here it was moving about with your cards and shuffling the backwards and forwards that caused the jumps and the loops so what else did this have well it did have the ability to store numbers anywhere in memory so there was a crude addressing system of sorts it did have the ability to read in a number or so-called number cards so if you were to say let's add 3 + 5 where are the three and the five going to come from well the easy answer would be get them from number cards so You' put an instruction here in your program saying read next number card and the number cards here which are at number seven you would read in and you say oh that's interesting that's a three and you could then either keep it in the CPU and read in the next card or if you wanted to optionally you could store the three and the five in memory now if you decided to store them and keep them for later the most amazing thing had to happen was that you had to take a copy of what is in the column here representing number three and transfer it to the place in store where you want to hold it in other words it's the data bus stuff been pulled in and pushed back out and in typical Victorian style it's not called the data bus it's called the Ingress axis and the egress axis now the Ingress axis was for reading stuff in from store memory and the egress axis was for storing it back out again but and I my mouth dropped open I mean how is that mechanically done and the answer is with racks and pinions like you've never dreamed of in your worst nightmares because this is 7 m long and the only bit of vacant memory is down at the far end you've got to trans ER the number three 7 m down to be stored so you just imagine these cogs and rats going like mad and transferring the three down to the far end but you could you could store the three you could store the five if you want to but you would retain copies in the CPU and you would add them together the addition was done by the barrel controllers here that's part of the CPU and corresponds very closely to what sometimes called the microgram programming level inside a CPU again for those of you who know about the era when CPUs were really like computers within computers they were easier to program that way rather than doing hardcore close to the metal logic used to have the ability to be able to write a program within a program as to how to do an addition within the CPU now that is the basis on which this is done there are sets of barrels with pegs coming out of them which if they rotate around in the right way and read the two numbers that you've put in three and five you call up the addition Barrel which swings around on lots of levers says I am the addition Barrel reads off the two numbers does lots of other complex stuff inside there because it's like an arithmetic unit built in there as well comes to the conclusion the answer is eight and then post the answer back out optionally if that's what what the program cards say to do so it's all kind of functionally complete there'd be an adder in there there' be a thing for doing subtractions and so on but the the the operations of it are really very very well known to us there were other things in here called variable cards those really were to stipulate where things might be stored you might have a reader number card but you would then optionally read a variable card to discover which location it's to be stored in if you want to keep a permanent copy so you can imagine that writing programs for this thing was not just getting the instructions right but also realizing that sometimes you might might need to do what would be called a store operation in assembly level programming well that store operation required you to read yet another card from this stack to find out where to store it dur during the era where he was in charge of supervising hand produced logarithm tables it was the printing that was always the problem typos crept in people sent in flame notes saying I bought your seven figure log tables and there's the following 50 errors so he always wanted his machines if ever they got built to have printers built in at the back so buried around the back of this yes there is a printer that could print out the answer and make a permanent record and it's very difficult for a firewall or something to notice this because these are valid HTTP requests they're just super slow and um you know maybe I've just got a really bad internet the same time we know that they're actually particles because we never have half a photon we never have half an electron so the question is if each time we send only one electron through these slits which does go