Presentation on theme: "What is a Bus? One of the set of conductors (wires, PCB tracks, or connections in an integrated circuit) connecting the various functional units in a computer."— Presentation transcript:
What is a Bus? One of the set of conductors (wires, PCB tracks, or connections in an integrated circuit) connecting the various functional units in a computer. There are busses both within the CPU and connecting it to external memory and peripheral devices. The width of the data bus, i.e., the number of parallel connectors, and its clock rate determine its data rate (the number of bytes per second which it can carry). This is one of the factors limiting a computers performance.
Computers do their work with Ones and Zeroes This is called the binary number system A single binary digit (a one or a zero) is called a bit Binary works for computers because switches are on or off Eight bits make up a byte We'll see more about this soon... DecimalBinary 0 0 1 1 2 10 3 11 4100 5101 etc
CPU RAM or ROM The buss address wires: 10010111 The buss data wires: 00110010 Hey RAM! Get me whatever is stored at address 10010111 Ok boss... that would be the number 00110010 bus's read/write wire 0 (read from memory) (Data on data wires would go in the other direction if read/write wire was 1 – CPU would send, RAM would receive)
The clock set the pace, and keeps the chips in sync...
Some metaphors for how a computer is organized...
A Little More About the CPU... All a CPU does is: fetch instructions from RAM or ROM execute those instructions Executing an instruction generally involves either: reading data from memory into a register (a very small chunk of extremely fast volatile memory built into the CPU), or modifying the data in a register (adding two values, comparing them, testing if a value is zero, etc), or storing the contents of a register back into memory Instructions are just ones and zeroes For instance, in an 8086 microprocessor, the instruction 10110000 01100001 means "put the value 01100001 into register AL"
Adding Two One-Bit Binary Numbers Input AInput BDecimal Output Binary Output In Other Words... 000000 + 0 = 0 101011 + 0 = 1 011010 + 1 = 1 112101 + 1 = 2 Think of the binary output as two separate bits: Rule for the right (ones) bit: (A and not B) or (B and not A) Rule for the left (twos) bit: ??
Getting Tricky with Ones and Zeroes AND OR 2-way switchflashlight