Academic Journal

Teaching assembly and C language concurrently.

Bibliographic Details
Title: Teaching assembly and C language concurrently.
Authors: Puhan, Janez, Bürmen, Árpád, Tuma, Tadej, Fajfar, Iztok
Source: International Journal of Electrical Engineering Education; Apr2010, Vol. 47 Issue 2, p120-131, 12p, 3 Diagrams
Subject Terms: C (Computer program language), Programming languages, Curriculum, Electrical engineering education, Computer architecture, Computer operating systems, Computer programming, Microcontrollers
Abstract: The paper discusses whether (and how) to teach assembly coding as opposed to (or in conjunction with) higher programming languages as part of a modern electrical engineering curriculum. We describe the example of a very simple cooperative embedded real-time operating system, first programmed in C and then in assembler. A few lines of C language code are compared with the slightly longer assembly code equivalent, and the advantages and drawbacks are discussed. The example affords students a much deeper understanding of computer architecture and operating systems. The course is linked to other courses in the curriculum, which all use the same hardware and software platform; this lowers prices, reduces overheads and encourages students to reuse parts of a written code in subsequent courses. A student learns that badly written and poorly documented code is very difficult to reuse. [ABSTRACT FROM AUTHOR]
Copyright of International Journal of Electrical Engineering Education is the property of Sage Publications Inc. and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
Database: Complementary Index
Description
ISSN:00207209