UCSD Main WebsiteUCSD Jacobs SchoolDepartment of Computer Science and Engineering
About CSECSE PeopleFacultyGraduate EducationUndergraduate EducationDepartment AdministrationContact CSE
spacer gif
spacer gif
CSE People
spacer gifspacer gif
spacer gif
plus signspacer gifDegree Programs
spacer gif
plus signspacer gifAdmissions
spacer gif
minus signspacer gifCourses
spacer gifspacer gifThis Year Schedule
spacer gifspacer gifNext Year Schedule
spacer gifspacer gifCourse Descriptions
spacer gifspacer gifClass Home Pages
spacer gifspacer gifEnrollment Status
spacer gifspacer gifEnrollment Restrictions
spacer gif
plus signspacer gifAdvising
spacer gif
plus signspacer gifFinancial Opportunities
spacer gif
spacer gifspacer gifResources
spacer gif
spacer gifspacer gifUndergraduate Program FAQ
spacer gif
spacer gif
spacer gif
Search
spacer gifspacer gifspacer gif
 
 
Google
spacer gifspacer gif
spacer gif
spacer gif
spacer gif

Home»Undergraduate Education»Courses»Undergraduate Course Descriptions»CSE30

Undergraduate Course Descriptions

CSE30 - Computer Organization and Systems Programming

Units: 4

Course Objectives:
This course gives an introduction to computer organization of modern digital computers, from the basic stored program model attributed to John von Neumann in the 1940s. The influence of these principles can be found in almost every computer which is in use these days, and they will lead the student to an understanding of the various components of a computer and their inter-relationships. We will use a specific machine to study computer architecture at the assembly language and C interface level. We are currently using Sun workstations and their SPARC series microprocessor to familiarize students with machine-oriented programming. Efficient and portable high-level language software engineering is achieved by understanding comparative architecture-dependent implementations of various constructs and mechanisms, such as stack frame implementation within the runtime environment (text/data/BSS/ heap/stack) and internal storage representations (including byte ordering and number of bytes of an object on different architectures). Programming assignments using C and assembly languages with some emphasis on UNIX systems programming will be used to reinforce these concepts.

Course Description:
Introduction to organization of modern digital computers - understanding the various components of a computer and their interrelationships. Study of a specific architecture/machine with emphasis on systems programming in C and Assembly languages in a UNIX environment.

Format:
Per week: 3 hours of lecture, 3 hour of discussion sections, 5 hours of computer lab, and 2 hours of outside preparation.

Prerequisites:
CSE 12, CSE 15L, and CSE 20 or Math 15A, or consent of the instructor.

Example Textbook(s):
SPARC Architecture, Assembly Language Programming & C, 2nd Edition, Richard P. Paul, Prentice Hall, 1999.

Laboratory work:
4 to 5 programming assignments using C and assembly languages to familiarize the student with a particular architecture at the C/assembly and assembly/hardware levels with emphasis on the runtime environment, to include the structure and use of stack frames and how they support conventions of C/assembler routines calling each other, recursion, dynamic memory management, etc. With the understanding of a specific architecture implementation and general comparisons of other architectures, students should gain the knowledge and skills necessary to produce more efficient and portable high-level language code throughout their careers. These programming assignments will also emphasize concepts in UNIX systems programming. This course assumes a good working knowledge of C programming.

Offered:
Every quarter: Fall, Winter, and Spring.

back to top ^
spacer gif
spacer gif
spacer gif
9500 Gilman Drive, La Jolla, CA 92093-0404
spacer gif
About CSE | CSE People | Faculty & Research | Graduate Education | Undergraduate Education
Department Administration | Contact CSE | Help | Search | Site map | Home
webmaster@cs.ucsd.edu
Official web page of the University of California, San Diego
Copyright © 2003 Regents of the University of California. All rights reserved.
spacer gif