Assembly and C Programming Mini-Course (2021)
Welcome #
“High”-level programming languages such as python provides many abstract types like lists and dictionaries and support complex operations such as taking a slice of the list as a basic operation. The underlying computer, of course, doesn’t directly support such complex operations in hardware. The typical “Data structures and algorithms” course describes how one can structure data (Data structures) in memory so that complex operations can be implemented efficiently in terms of more primitive ones (Algorithms). A student who has only programmed in a language such as python may not have a sufficient understanding of the more primitive data structuring mechanisms and associated operations supported by the hardware. The goal of this course is to build this understanding.
Contact #
Please write to Balagopal Komarath <bkomarath@iitgn.ac.in> for any course related queries.
Lectures #
- Why assembly?
- Assembly datatypes
- Assembly programming
- Discussion
- Branching
- Loops
- Types
- Discussion
- Functions
- C pointers
- C compound types