CS208 Introduction to Computer Systems Friday, 13 Jan 2023 + Recap - C basics - types, conditionals, loops, functions - header files - function prototypes - printf, including %s, %c, %d, %x, %lx - struct - C memory handling - static variables (local variables, stored on system stack) - dynamically allocated memory (malloc, free, the heap) - arrays ("char s[20]" vs. "char *s = malloc(20)") - C extras - 2d arrays, passed as parameters - Data representation: characters & character encodings - Data representation: integers - Byte order (a.k.a. "endian-ness"); big- and little-endian storage of integers + Homework through Jan 22 - Programming assignment: shoutify & sorter [done] - Programming assignment: queues / memory management [Jan 16] - Quiz about data representation [Jan 18, take as many times as you want] - Programming assignment: bit operations and UTF-8 [Jan 22] + Coming up - Negative integers and real/floating-point numbers (today) - Debugging C programs - Machine language and assembly language - Reading assembly language and reverse-engineering what an executable program is doing - Monday, Jan 30: in-class exam - data representation - C basics - C memory management - a little bit of assembly language + Questions - queues assignment - anything else + Two's complement integer representation + Have a great weekend!