Buses (the other spelling, "busses", are pecks on the cheek) are just bundles of wires for carrying related electrical signals. The system bus includes two subcomponents, the address bus and the data bus. When the CPU fetches instructions or data, it places the address of the instruction or data on the database, and the memory module recognizes the address as `belonging' to it and responds by places the memory contents (the instruction or the data) on the data bus, whereupon the CPU will sense the value. You should think of the memory module as a large array, and an address as simply an integer index into the array. This integer is sent over the address bus in binary form -- each wire has two valid voltage levels -- and similarly, the data is read from the memory as a binary value.
The addresses and data are sent in binary. We talked about how the unsigned binary number representation worked and did an addition example. Next, we talked about one alternative representation of numbers, the 1's complement representation, which allowed us to represent negative numbers. Negative numbers have the sign bit set to a 1, and the value his the binary number obtained from flipping the remaining bits.
We noted how addition of numbers represented in 1's complement is tricky. When one or both of the numbers being added is negative, we first add the numbers using the same addition hardware as we used for unsigned numbers, and then we must add another 1 to the result to get the correct answer.
firstname.lastname@example.org, last updated