
The demand for assembler language programmers has dropped dramatically over the past 20 years with the advent of structured programming languages and the accessibility of hardware features from high‐level languages. Nevertheless, a course in assembler language programming is often the first, and sometimes the only, introduction a student has to a machine's hardware. For this reason alone, assembler language programming courses should not be removed from a curriculum; instead, they should be kept and taught in conjunction with modern software engineering practices. This article describes an alternative approach to teaching assembler language programming. Whereas the students are still introduced to a machine and its assembler language, they are required to write several low‐level library routines they used in introductory courses (such as ACM CS1 and CS2). Furthermore, the S‐Machine's support software allows students to study the internals of an assembler, a librarian, and a linker.
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 2 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Average | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Average | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Average |
