ARM Assembly Language Programming

By Peter Knaggs and Stephen Welsh
Broadly speaking, you can divide the history of computers into four periods: the mainframe, the mini, the microprocessor, and the modern post-micoprocessor. The Mainframe era was chaterrized by computers that required large buildings and teams of technicians and operators to keep them going. More often than not, both academics and students had little direct contact with the mainframe - you handed a deck of punched cards to an operator and waited for the ouput to appear hours later. During the mainframe era, academics concentrated on languages and compilers, algorithms, and operating systems.
The minicomputer era put computers in the hands of students and academics, because university departments could now buy their own minis. As minicomputers were not as complex as mainframes and because students could get direct hands-on experience, many departments of computer science and electronic engineering taught students how to program in the native language of the computer - assembly language. In those days, the mid 1970s, assembly language programming was used to teach both the control of I/O devices, and the writing of programs. The explosion of computer software had not taken place, and if you wanted software you had to write it yourself.
The late 1970s saw the introduction of the Microprocessor. For the first time, each student was able to access a real computer. Unfortunately, microprocessors appeared before the introduction of low-cost memory (both primary and secondary). Students had to program microprocessors in assembly langauge because the only storage mechanicsm was often a ROM with just enough capacity to hold a simple single pass assembler.
The advent of the low-cost microprocessor system ensured that virtually every student took a course on assembly language. Even today, most courses in computer science include a module on computer architecture and organization, and teaching students to write programs in assembly language forces them to understand the computer's architecture. However, some computer scientist who had been educated during the mainframe era were unhappy with the microprocessor, because they felt that the 8 bit microprocessor was a retrograde step - its architecture was far more primitive that the mainframes they had studied in the 1960s....
Read More/Download

Popular Posts