Systems Programming 101

on 2021-07-25

These are notes from things I learnt while exploring low level computer systems materials. It is quite chaotic so I wouldn't recommend reading until I do some house keeping.

You can find the complete notes and code on github

  • Endianness is how an integer type is laid out in memory. Some CPUs order left to right others are right tot left.
  • There is Little Endian and Big Endian. Little endian computers order integers from left6 to right while Big endian computers order integers from right to left. Intel is little endian.
  • Floating-point numbers are represented in memory as a scientific notation. An example of a scientific notation is: the mass of Jupiter as 1.898 × 1027 kg
  • Each Hexadecimal digit represent 4 bits. 0xF selects all bits from a nibble. A nibble is half a byte, ie. 4 bits. eg. 0x71E4 & 0xF000 = 7 or 111 in binary
  • ...