Asee peer logo

A Gentle Introduction To Addressing Modes In A First Course In Computer Organization

Download Paper |

Conference

2009 Annual Conference & Exposition

Location

Austin, Texas

Publication Date

June 14, 2009

Start Date

June 14, 2009

End Date

June 17, 2009

ISSN

2153-5965

Conference Session

Embedded System Design

Tagged Division

Electrical and Computer

Page Count

7

Page Numbers

14.31.1 - 14.31.7

DOI

10.18260/1-2--5725

Permanent URL

https://peer.asee.org/5725

Download Count

2497

Request a correction

Paper Authors

biography

Eric Freudenthal University of Texas, El Paso

visit author page

Eric Freudenthal is an Assistant Professor of Computer Science at the University of Texas at El Paso.

visit author page

biography

Brian Carter University of Texas, El Paso

visit author page

Brian Carter earned a B.S. in Computer Science at the University of Texas at El Paso. He is now a software engineer at Lockheed Martin.

visit author page

Download Paper |

Abstract
NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract

A Gentle Introduction to Addressing Modes in a First Course in Computer Organization

Abstract

This paper describes the reform of a sophomore-level course in computer organization for the Computer Science BS curriculum at The University of Texas at El Paso, where Java and integrated IDEs have been adopted as the first and primary language and development environments. This effort was motivated by faculty observations and industry feedback indicating that upper-division students and graduates were failing to achieve mastery of non- garbage-collected, strictly imperative languages, such as C. The similarity of C variable semantics to the underlying machine model enables simultaneous mastery of both C and assembly language programming and exposes implementation details that are difficult to teach independently, such as subroutine linkage and management of stack frames. An online lab manual has been developed for this course that is freely available for extension or use by other institutions.

Our previous papers reported on pedagogical techniques for facilitating student understanding of the relationships between high-level language constructs, such as algebraic expression syntax, block-structured control-flow structures, and composite data types, along with their implementations in machine code. While this integrated approach to introducing control-flow structures has been successful, many students have been confused by the large number of different addressing modes. The present paper describes further extensions of this integrated C- and-assembly language pedagogical approach in which addressing modes are introduced incrementally as solutions to pragmatically motivated problems. Initial results, as measured by quizzes and in-class exercises, are highly encouraging.

Introduction

We report on reforms to a sophomore-level course in computer organization at an ABET- accredited Computer Science Department. The department has adopted an object-first curriculum as defined by the ACM Computing Curriculum 2001 Report4 where Java is used as the principal teaching language in most major coursework. As we reported previously,1,2 after adoption of this object- and Java-centric pedagogical approach, faculty teaching upper-division courses and potential employers detected a dramatic reduction in upper-division to understand or design programs written in strictly imperative languages that reflect the semantics of the underlying memory model, such as C. Schonberg and Dewar report similar observations of students graduating from other programs that adopted Java- centric curricula.5 While these deficits are not common at schools with architecture-first curricula,3,4,5 object-centric curricula are asserted to provide complementary advantages. Rather than taking a position on whether architecture-first curricula are strictly superior to object-first, we implemented compensatory reforms that appear to be successful, as observed by upper division systems faculty and employers who report that recent graduates have attained a dramatically improved ability to program in C.

Freudenthal, E., & Carter, B. (2009, June), A Gentle Introduction To Addressing Modes In A First Course In Computer Organization Paper presented at 2009 Annual Conference & Exposition, Austin, Texas. 10.18260/1-2--5725

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2009 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015