The most dominant computer in the 1980s was the commodore 64. Until the year 1985 the sales for the IBM PC and the C64 were the same. But there was a smaller alternative available which was the Atari 600XL. The Atari 8bit computer was equipped with only 16kb of RAM and was sold for a lower price than the C64.
The question left open is how to program such a device. A look into magazines and books from the 1980s will show that two dominant programming languages were used: BASIC And the assembly language. For today's programmer it looks a bit unusual but in the 1980s most software was created in Assembly.
So what is Assembly language? It is a machine oriented programming style. The programmer has to know the details of a certain CPU, a certain memory layout and all the onboard chips. Assembly language is written from a hardware perspective. The underlying idea is, that the dominant problem of a computer is to built the machine with RAM, keyboard and CPU and then a short program demo is coded in the assembly language. For this reason assembly works great.
The reason why today's programmers have lost their interest in the assembly language is because they are not writing short demo programs in 1 kb anymore. What today's programmers are trying to archive is to create larger projects which have 100 kb and more in sourcecode. Such programs can't be written on 8bit homecomputers and especially they can't be created in assembly language. It would take years until a team of programmers has created such a program.
A seldom noticed side development for the Atari 8bit computer was the existing of so called C compilers like Deep blue c and tiny c. A program written in Deep blue c has much in common with a modern program written for Windows or linux. The idea of C is that the programmer is using a library of graphic routines and that a single command is very powerful. For example, the c language allows to open a file and write some characters into that file in under 10 lines of code. Such a feature would need much more lines of code in the assembly language.
The C language and the Pascal language have much in common. They are both academic programming language because they are using a high abstraction level. The underlying hardware gets ignored and the programming language itself stands in the focus. Instead of focusing on a certain CPU type, the programmer is asked to use for loops and existing programming libraries. Also he can use sub functions and variables.
No comments:
Post a Comment