The document discusses different types of registers found in a typical computer architecture and their purposes. It describes the program counter, data registers, address registers, accumulator, instruction register, temporary registers, and input/output registers. It also defines a multiplexer as a device that has multiple inputs and a single output line, using select lines to determine which input is connected to the output.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
12 views4 pages
Lab Manual 1
The document discusses different types of registers found in a typical computer architecture and their purposes. It describes the program counter, data registers, address registers, accumulator, instruction register, temporary registers, and input/output registers. It also defines a multiplexer as a device that has multiple inputs and a single output line, using select lines to determine which input is connected to the output.
Gujrat Institute of Management Sciences PMAS-ARID Agriculture University Rawalpindi
Types and Purposes of Registers & Mux
In a Computer Organization course, understanding registers is fundamental as they play a crucial role in the architecture and operation of a computer's CPU (Central Processing Unit). Registers are small, high-speed storage locations within the CPU that hold data temporarily during processing. Each register has a specific purpose and function in executing instructions and managing data flow within the CPU. Here are the common types of registers found in a typical computer architecture along with their purposes: Program Counter The program is stored at the beginning of the memory with the first instruction at binary address 0000, the second instruction at address 0001, the third at address 0010, and so on. The program counter, which is part of the control unit, counts from 0000 to 1111. Its job is to send to the memory the address of the next instruction to be fetched and executed. It does this as follows. (a) The program counter is reset to 0000 before each computer run. (b) When the computer run begins, the program counter sends address 0000 to the memory. (c) The program counter is then incremented to get 0001. (d) After the first instruction is fetched and executed, the program counter sends address 0001 to the memory. (e) Again, the program counter is incremented. (f) After the second instruction is fetched and executed, the program counter sends address 0010 to the memory. In this way, the program counter is keeping track of the next instruction to be fetched and executed. The program counter is like someone pointing a finger at a list of instructions, saying do this first, do this second do this third, etc. This is why the program counter is sometimes called a pointer; it points to an address in memory where something important is being stored. Data Registers Data registers hold data that is being processed or manipulated by the CPU. They are used for arithmetic operations, data movement, and temporary storage of operands and results. Gujrat Institute of Management Sciences PMAS-ARID Agriculture University Rawalpindi Address Registers (Index Registers) Address registers store memory addresses used for accessing data in memory. They are often used in memory operations such as loading and storing data to/from memory. Accumulator The accumulator register is a special-purpose register in the CPU that is used for performing arithmetic and logic operations. It holds one of the operands during arithmetic or logic operations, and it typically stores the result of the operation as well. The accumulator is often used as a temporary storage location for intermediate results in arithmetic calculations. Instruction Register The instruction register (IR) holds the currently fetched instruction from memory. It serves as a buffer between the CPU and memory, allowing the CPU to fetch instructions and decode them for execution. The IR holds the opcode (operation code) of the instruction, which determines the operation to be performed, as well as any operands or addressing modes associated with the instruction. Temporary Register Temporary registers, also known as scratch registers or working registers, are general-purpose registers used for temporary storage of data during computation. They are often used to hold intermediate results or operands during arithmetic and logic operations. Description: Temporary registers are not dedicated to specific tasks like the accumulator or instruction register. Instead, they can be used for various purposes depending on the requirements of the program being executed. Temporary registers are typically part of the CPU's register file and are accessible to the CPU's arithmetic and logic units. Input and Output Registers: Input and output (I/O) registers are used for communication between the CPU and external devices such as peripherals, memory-mapped I/O devices, or input/output ports. Input registers receive data from external devices, while output registers transmit data to external devices. Description: Input and output registers serve as buffers between the CPU and external devices, allowing data to be transferred between the CPU and peripherals in a controlled manner. Input registers hold data received from external devices until it can be processed by the CPU, while output registers hold data generated by the CPU until it can be transmitted to external devices. Multiplexer Multiplexer is a device that has multiple inputs and a single line output. The select lines determine which input is connected to the output, and also to increase the amount of data that can be sent over a network within certain time. It is also called a data selector. Gujrat Institute of Management Sciences PMAS-ARID Agriculture University Rawalpindi