Design of a microcomputer laboratory for teaching computer science

  • Authors:
  • Alfred C. Weaver

  • Affiliations:
  • Department of Applied Mathematics and Computer Science, University of Virginia, Charlottesville, Virginia

  • Venue:
  • SIGCSE '81 Proceedings of the twelfth SIGCSE technical symposium on Computer science education
  • Year:
  • 1981

Quantified Score

Hi-index 0.00

Visualization

Abstract

On the premise that many of the fundamental concepts of computer science can be better taught in a hands-on, dedicated computing environment (i.e., a microcomputer), as opposed to a large multi-purpose system in which the student is insulated from the machine by multiple layers of operating system software, we have developed a microcomputer-based lecture/lab course to teach CPU organization, digital computer architecture, and assembly language programming as a third undergraduate course in computer science. By beginning with simple machine organizations and simple assembly languages, and later on making a transition toward more complex architectures and languages, the transfer of knowledge and experience is positive at every step. The same laboratory also supports a graduate course in microcomputer systems design which teaches hardware technology, component specification, operating system design, hardware/software tradeoffs, and practical applications such as process control. This paper outlines the motivation and justification for the project, and then discusses the actual design of these courses and their supporting laboratory. This project is supported in part by two grants from the National Science Foundation: SER-7915929 for the acquisition of the microcomputer equipment and SER-8000802 for the development of the undergraduate course material.