
Explore how the number 42 is written in memory using binary, decimal, hexadecimal, and octal notations, then see that four bytes store the same value as a binary configuration.
Binary numbers get very long quickly making it hard for people to deal with. Converting the binary to decimal is a bit of a pain but converting to hex is easy. Each 4 bits of a binary number converts to one hex digit. This makes the numbers easy to convert and easy for people to remember.
Explore how overflow occurs in memory using an eight-bit char, and see binary addition wrap from 255 to zero when space runs out.
Explore how a one-byte overflow yields zero, then learn two's complement encoding of negative numbers by flipping bits and adding one, enabling subtraction via addition in the ALU.
Master the four pillars of a developer: the terminal and shell with bash, vim as a text editor, a programming language like C or Python, and git for version control.
Understand how the file system organizes a computer as a root directory with bin, dev, and users, illustrating gui, terminal, and desktop access.
Explore vim as a fast, modal text editor for code, with insertion and normal modes, and see how its principles apply to modern IDEs like VS Code and Neovim.
Learn the essential vim commands you’ll use most, from normal and insert modes to navigation with w, b, 0, and $, plus yanking, editing, and searching.
This course provides the perfect foundation for budding programmers, offering a concise yet comprehensive exploration of fundamental principles that are indispensable in the world of computer science.
The journey begins with a super_small dive into computer architecture, just to "see" a RAM, CPU and ALU.
Navigating through the command line is a skill every programmer should master. We have a look into Bash, discovering its efficiency in managing files, executing commands, and streamlining your workflow. This is explained super easily.
Then Vim, a versatile and powerful text editor. Master the art of text manipulation, coding with speed and precision.
One section of the course explains the "coding" idea, namely, how we can encode everything into some binary digits.
Although the course is succinct, it acts as a gateway to a wealth of additional resources. Numerous links guide you to further exploration, providing an expansive roadmap for your continued learning journey. I wanted to keep this course under 2 hours cap. This may have been a limit, but maybe not. Indeed, let me repeat, this course is just a mega "pointer (a C concept)" to other online sources. You can treat this just as a roadmap indeed! So mind the link resources!