Microcomputer Architecture and Programming
Microcomputer Architecture and Programming
Making concepts and phenomena visual in machine and assembly language programming
SIGCSE '87 Proceedings of the eighteenth SIGCSE technical symposium on Computer science education
Assembly language courses in transition
SIGCSE '88 Proceedings of the nineteenth SIGCSE technical symposium on Computer science education
Using assembly language to teach concepts in the introductory course
SIGCSE '88 Proceedings of the nineteenth SIGCSE technical symposium on Computer science education
EASY/VI—a new instructional computer
ACM SIGCSE Bulletin
Computer organization/architecture: a threaded top-down design
CSC '88 Proceedings of the 1988 ACM sixteenth annual conference on Computer science
Hi-index | 0.00 |
Given technological trends toward high level programming tools, abstract data mechanisms, logical systems organization, knowledge engineering, and human interfaces, greater emphasis must today be placed on understanding how a machine and its architecture support more abstract concepts and models. The historical approach to teaching computer organization and related machine language issues has been to train students to be proficient with some particular hardware. Indeed, many such courses attempt to prepare students for careers involving particular types of computers. Our philosophy is quite different for two basic reasons. First, fewer individuals are required to be proficient machine or assembly language programmers; instead, ability to think abstractly and to employ more powerful (more conceptual) tools is demanded. Second, the rapidity with which new machine types are introduced suggests that learning any specific machine will necessarily miss the mark; instead, students must become familiar with the generic machine, that is, the conceptual machine common to almost all computer hardware designs. (Even the so-called non-Von Neuman machines are usually comprised of systems of sequential machines.) We advocate that these undergraduate courses be oriented to teaching from the framework of abstraction and concept and that the machine vehicle for the course be chosen to support this framework.