To work with this technology, you have to know Assembly. You need to know about instructions and also binary notation for numbers. You should also know about bits and working with them in Assembly to use this technique.
There are many types of data types. But, here we will be dealing only the sizes of those data types. The basic data type is byte which is 8 bits long, then word or Integer which is 16 bits long, then comes dword(double-word) or Long Integer which is 32 bits long.
The processor and the memory are two important part of the computers that you need to know about when programming. The I/O is also an important part but it is sometimes merged with memory as it can be memory mapped and access to I/O is little different than memory.