COMPUTER DATA CONVERSION | DON STEVE BLOG
March 29, 2024

Data conversion is the conversion of computer data from one format to another. Throughout a computer environment, data is encoded in a variety of ways. For example, computer hardware is built on the basis of certain standards, which requires that data contains, for example, parity bit checks. Similarly, the operating system is predicated on certain standards for data and file handling.

 

REGISTER

In a computer, a register is one of a small set of data holding places that are part of a computer processor. A register may hold a computer instruction, a storage address, or any kind of data (such as a bit sequence or individual characters). Some instructions specify registers as part of the instruction. For example, an instruction may specify that the contents of two defined registers be added together and then placed in a specified register. A register must be large enough to hold an instruction – for example, in a 32-bit instruction computer, a register must be 32 bits in length. In some computer designs, there are smaller registers – for example, half-registers – for shorter instructions. Depending on the processor design and language rules, registers may be numbered or have arbitrary names.

 

Register are used to quickly accept, store, and transfer data and instructions that are being used immediately by the CPU.

 

TYPES OF REGISTERS

  1. Memory Address Register (MAR): This register holds the memory addresses of data and instructions. This register is used to access data and instructions from memory during the execution phase of an instruction. Suppose CPU wants to store some data in the memory or to read the data from the memory. It places the address of the-required memory location in the MAR.
  2. Program Counter: The program counter (PC), commonly called the instruction pointer (IP) in Intel x86 microprocessors, and sometimes called the instruction address register, or just part of the instruction sequencer in some computers, is a processor register It is a 16 bit special function register in the 8085 microprocessor. It keeps track of the the next memory address of the instruction that is to be executed once the execution of the current instruction is completed. In other words, it holds the address of the memory location of the next instruction when the current instruction is executed by the microprocessor.
  3. Accumulator Register (AC): This Register is used for storing the Results that are produced by the System. When the CPU will generate Some Results after the Processing then all the Results will be Stored into the AC Register.
  4. Memory Data Register (MDR): MDR is the register of a computer’s control unit that contains the data to be stored in the computer storage (e.g. RAM), or the data after a fetch from the computer storage. It acts like a buffer and holds anything that is copied from the memory ready for the processor to use it. MDR hold the information before it goes to the decoder. MDR which contains the data to be written into or readout of the addressed location. The MDR is a two-way register. When data is fetched from memory and placed into the MDR, it is written to in one direction. When there is a write instruction, the data to be written is placed into the MDR from another CPU register, which then puts the data into memory. The Memory Data Register is half of a minimal interface between a micro program and computer storage, the other half is a memory address register.
  5. Index Register (IR): A hardware element which holds a number that can be added to (or, in some cases, subtracted from) the address portion of a computer instruction to form an effective address. It is also known as base register. An index register in a computer’s CPU is a processor register used for modifying operand addresses during the run of a program.
  6. Memory Buffer Register (MBR): This register holds the contents of data or instruction read from, or written in memory. It means that this register is used to store data/ instruction coming from the memory or going to the memory.
  7. Data Register (DR): A register used in microcomputers to temporarily store data being transmitted to or from a peripheral device.

 

DIFFERENCES BETWEEN REGISTER AND MAIN MEMORY

Registers are storage locations internal to the processor. CPU instructions operate on these values directly. On RISC processors, all data must be moved into a register before it can be operated. On CISC (Intel) chips, there are a few operations that can load data from RAM, process it, and save the result back out, but the fastest operations work directly with registers. Also, there are registers that are set aside for certain tasks, these generally include a program counter, stack, and flags.

Each register also has a size that determines the maximum amount of data that can be processed at a time. The registers on Pentium chips, for example, are 32 bits. Finally, there are generally only a few registers available on a processer. Intel chips, for example, have 6 general purpose registers, and several specialized registers including a base register, stack register, flags register, program counter, and some addressing registers.

Memory, or RAM, is located external to the CPU. Generally speaking, data has to be loaded into a CPU register from memory before the CPU can process it, RAM is much slower than registers, there is a lot more RAM than registers, and generally memory can be addressed on byte boundaries, where registers may not be able to access all the bytes in a register.

To summarize: in general, registers are temporary storage in the CPU that holds the data the processor is currently working on, while RAM holds the program instructions and the data the program requires.

 

STEPS IN “DATA – FETCH – EXECUTE” CYCLE

An instruction cycle (sometimes called fetch-and-execute cycle, fetch-decode-execute cycle, or FDX) is the basic operation cycle of a computer. It is the process by which a computer retrieves a program instruction from its memory, determines what actions the instruction requires, and carries out those actions. This cycle is repeated continuously by the central processing unit (CPU), from boot – up to when the computer is shut down.

Each computer’s CPU can have different cycles based on different instruction sets, but will be similar to the following cycle:

First of all, both the data and the program that acts upon that data are loaded into main memory (RAM) by the operating system. The CPU is now ready to do some work.

  1. Fetch: The first step the CPU carries out is to fetch some data and instructions (program) from main memory then store them in its own internal temporary memory areas. These memory areas are called ‘registers’. This is called the ‘fetch’ part of the cycle. For this to happen, the CPU makes use of a vital hardware path called the ‘address bus’. The CPU places the address of the next item to be fetched on to the address bus. Data from this address then moves from main memory into the CPU by travelling along another hardware path called the ‘data bus’.
  2. Decode: The next step is for the CPU to make sense of the instruction it has just fetched. This process is called ‘decode’. The CPU is designed to understand a specific set of commands. These are called the ‘instructionset’ of the CPU. Each make of CPU has a different instruction set. The CPU decodes the instruction and prepares various areas within the chip in readiness of the next step.
  3. Execute: This is the part of the cycle when data processing actually takes place. The instruction is carried out upon the data (executed). The result of this processing is stored in yet another register. Once the execute stage is complete, the CPU sets itself up to begin another cycle once more.

The cycle is then repeated.

 

FACTORS AFFECTING SPEED OF DATA TRANSFER 

  1. Bus Speed: Bus speed refers to the number of times a group of bits can be sent in each seconds.
  2. Bus Width: Bus width refers to the number of bits that can be sent to the CPU simultaneously.

 

BUS

In computer architecture, a bus is a subsystem that transfers data between components inside a computer, or between computers.

Early computer buses were parallel electrical wires with multiple connections, but the term is now used for any physical arrangement that provides the same logical functionality as a parallel electrical bus. Modern computer buses can use both parallel and bit serial connections, and can be wired in either a multi – drop (electrical parallel) or daisy chain topology, or connected by switched hubs, as in the case of USB.

 

TYPES OF BUS

  1. Address Bus: An address bus is a computer bus (a series of lines connecting two or more devices) that is used to specify a physical address. When a processor or DMA-enabled device needs to read or write to a memory location, it specifies that memory location on the address bus (the value to be read or written is sent on the data bus). The width of the address bus determines the amount of memory a system can address. For example, a system with a 32-bit address bus can address 2³² (4,294,967,296) memory locations. If each memory address holds one byte, the addressable memory space is 4 GB.
  2. System Bus: A system bus is a single computer bus that connects the major components of a computer system. The technique was developed to reduce costs and improve modularity. It combines the functions of a data bus to carry information, an address bus to determine where it should be sent, and a control bus to determine its operation.
  3. Control Bus: A control bus is (part of) a computer bus, used by CPUs for communicating with other devices within the computer. While the address bus carries the information on which device the CPU is communicating with and the data bus carries the actual data being processed, the control bus carries commands from the CPU and returns status signals from the devices, for example if the data are being read or written to the device the appropriate line (read or write) will be active (logic zero).

Leave a Reply

Your email address will not be published. Required fields are marked *