![[Screenshot 2024-06-30 at 8.35.37 PM.png]]
These are [my](https://vickiboykis.com/) notes, exercises, and links for the series of video lectures covering learning C, computer architecture, and low-level programming offered [in a course by Dr. Chuck](https://www.cc4e.com/).
### Course Reference
+ [YouTube Lecture](https://www.youtube.com/watch?v=PaPN51Mm5qQ&t) || www.cc4e.com || [K+R Book ](https://www.cc4e.com/book/chap00.md) || [ GH Repo]([https://github.com/csev/cc4e](https://github.com/csev/cc4e)) || [C-11 Standard](http://port70.net/~nsz/c/c11/n1570.html)
### Course Notes and Side Quests
+ ⌨️ [K&R 0: Historical Context](Historical%20Context.md)
+ ⌨️ [From Python to C](From%20Python%20to%20C.md)
+ ⌨️ [K&R 1: A Tutorial Introduction](Chapter%201%20A%20Tutorial%20Introduction.md)
+ [Unicode and Character Sets](Unicode%20and%20Character%20Sets.md )
+ [[Chapter 1 A Tutorial Introduction#Chained Assignment|Chained Asignment]]
+ [[Chapter 1 A Tutorial Introduction#EOF|EOF]]
+ [[Chapter 1 A Tutorial Introduction#Sidebar on floating point| Floating point]]
+ [[Chapter 1 A Tutorial Introduction#Sidebar on 32-bit processors | 32-bit processors]]
+ ⌨️ [K&R 2: Types, Operators, and Expressions](Chapter%202%20Types%20Operators%20and%20Expressions)
+ [[Chapter 2 Types Operators and Expressions#Endianness |Endianess]]
+ [[Floating Point Standards]]
+ [[Chapter 2 Types Operators and Expressions#Prefix and Postfix |Prefix and Postfix]]
+ ⌨️ ([05:04:13](https://www.youtube.com/watch?v=PaPN51Mm5qQ&t=18253s)) [[K&R 3: Control Flow]]
+ [[Chapter 3 Control Flow#Binary search|Binary Search]]
+ [[Chapter 3 Control Flow#Collection-controlled loops||Collection-controlled loops]]
+ [[Shell Sort]]
+ [[Chapter 3 Control Flow#do while|do while]]
+ ⌨️ ([06:04:05](https://www.youtube.com/watch?v=PaPN51Mm5qQ&t=21845s)) [K&R 4: Functions and Program Structure](https://www.youtube.com/watch?v=PaPN51Mm5qQ&t=21845s)
+ [[Chapter 4 Functions and Program Structure#Call by Value versus call by reference| Call by value]]
+ [[Chapter 4 Functions and Program Structure#Grep implementation|grep]]
+ [[Chapter 4 Functions and Program Structure#Scope Rules| Scope Rules]]
+ [[What is a buffer]]
+ [[Chapter 4 Functions and Program Structure#Recursion|Recursion]]
+ ⌨️ ([08:06:01](https://www.youtube.com/watch?v=PaPN51Mm5qQ&t=29161s)) [[Chapter 5 Pointer and Arrays]]
+ [[Chapter 5 Pointer and Arrays#Pointer program|pointer example]]
+ [[What is a buffer]]
+ [[Chapter 5 Pointer and Arrays#The Worst Computing Security Hole in all of history|The Worst Computing Security Hole in all of history]]
+ ⌨️ ([09:58:08](https://www.youtube.com/watch?v=PaPN51Mm5qQ&t=35888s)) K&R 6: Structures
### Secondary Sources
+ **Book**: [Computer systems: A Programmer's Perspective](https://csapp.cs.cmu.edu/)
+ **Notes:** [Computer Hardware Organization](Computer%20Architecture%20Hardware.md)
+ **Notes:** [Levels of Memory Access](Levels%20of%20Memory%20Access.md)
### Papers
+ [Misconceptions about Loops in C (PDF)](https://dl.acm.org/doi/pdf/10.1145/3652588.3663324)
+ [Portability of Unix Programs](https://www.bell-labs.com/usr/dmr/www/portpap.pdf)
+ [C Programming Language: A Review](https://www.researchgate.net/publication/371166462_C_Programming_Language_A_Review)
+ [[Chapter 2 Types Operators and Expressions#GOTO considered Harmful | Goto Considered Harmful]]
Last Modified: August 27, 2024