|
CS351 - Computer Organization
|
General Information
This is the website for CS351 - Computer Organization taught by Steve Baker
Click on the links on the left for information about the course.
Lessons:
- Binary 1
Review of number systems and Boolean logic, Binary operators and basic bit operations, Two's compliment, Adding and subtracting in Binary - Binary 2
Binary multiplication, Conversion of integers <-> ASCII, Endianness. - The C programming Language:
- C Lesson 1 - Data Literals, Comments, Variables and Expressions
Covers data literals, code comments, variables, assignment, expressions and basic operators, and basic input/output (printf and scanf) - C Lesson 2 - Comparisons and Conditional statements
Covers comparison operations, basic Boolean operators, compound statements, the if, if-else and nested if statements. - C Lesson 3 - Looping
Covers the while and for loops and the control statements: break and continue . - C Lesson 4 - Functions
Covers the functions: defining and prototyping, parameters and return values and scope: visibility of functions and variables in functions. - C Lesson 5 - Arrays and Strings
Covers basic arrays and strings. - C Lesson 6 - 2D Arrays
Covers 2+ dimensional arrays and introduction to pointers. - C Lesson 7 - Structured data
Covers structured data (struct ) and structure constants. - C Lesson 8 - File Input/Output
Covers opening and reading from files, using fgetc /getchar and fgets functions and writing to files using fputc and fputs. - GDB Howto
GDB Command overview for debugging assembly programs using the TUI interface - Asm Lesson 1 - The Central Processing Unit (CPU)
Introduction to the CPU, registers, the flag register, assembly instructions and address/values. - Asm Lesson 2 - Registers, Memory layout, System calls and NASM
Parts of a register, Linux process memory layout, Register usage during system calls and the Netwide Assembler (NASM) - Asm Lesson 3 - Machine Language / Instructions (part 1)
Comparing data and jumps, C to Assembly translations - Asm Lesson 4 - Machine Language / Instructions (part 2)
Copying data, Looping, Functions and the stack, Arithmetic operations - Asm Lesson 5 - The hardware stack
Using the stack for temporary local variables. - Asm Lesson 6 - The C library, The heap, C pointers in assembly
Using the C library from assembly, The C dynamic memory heap allocation functions and C pointers to assembly guide - Curses 1 - Intro
Introduction to the curses library (non-required material) - Curses 1 - Character attributes and colors
Applying character attributes and colors (non-required material)
|