Computer Architecture And Assembly Language, CMAC 3100, Section 1

Welcome to CMAC 3100. In this class we will study computer organization and architecture with a focus on assembly language programming. As we learn how to program in assembly language we will learn the fundamentals of how computers operate. We will discuss data representation and storage at the lowest level.

As part of this investigation we will study the Intel X86-64 assembly language. You will be writing programs in this language throughout the semester.

WARNING: This class is intended for students in the Applied Computing degree. This class will NOT satisfy the requirement for CMSC 3100 Computer Architecture. CMSC 3100 is much more focused on the implementation of a computer. If you are in the computer science degree program, this class (CMAC 3100) will not count for your degree requirements.

This course will be a combination of mathematics, computer engineering and computer science. Students are encouraged to:

I will be using the university programming server for this class. This is a linux based machine and we will be using a number of tools provided by linux. I expect that you have used a linux based machine in your previous classes. I will probably use one every day in class. If you have any problems or questions, please ask.

Currently I plan on using:

We will discuss each of these tools as we encounter and use them. I will try to provide documentation on use as well as pointers to more information. Again, if you have problems, please ask for help.

I expect that you know how do do several things/have used several tools

I will use these tools almost every class as well, so if you are confused or need help, please ask. My toolset might not match yours, but that is ok, the important item here is to be able to accomplish the task given.

It is my hope that you will gain proficiency and understanding of programming and the entire programming process in this class. Please ask questions.

This class meets MWF 2:00 to 2:50 in Ross Hall room 136. This course is worth three credits.

Announcements: