COMPUTER DATA CONVERSION
REGISTERS
Registers
are temporary storage area for instructions or data. They are not a part of
memory; rather they are special additional storage locations that offer the
advantage of speed. It works under the direction of the control unit to accept,
hold, and transfer instructions or data and perform arithmetic or logical
comparisons at high speed. Most operations are done on the register; the
processor can’t directly perform arithmetic in memory. For example, if you want
to add 1 to a memory address, the processor will normally do this by loading
the initial value from memory into a register, adding 1 to the register, and
then saving the value back to memory.
The
width (in bits) of the processor’s register determines how much data it can
compute with at a time. This is sometimes used to label the processor’s size.
ADDRESS
A
memory address is an identifier for a memory location, at which a computer
program or a hardware device can store data and later retrieve it. In modern
byte – addressable computers, each address identifies a single byte of storage;
data too large to be stored in a single byte may reside in multiple bytes
occupying a sequence of consecutive addresses. Some microprocessors were
designed to be word – addressable, so that the addressable storage unit was
larger than a byte. The efficiency of addressing of memory depends on the size
of the address bus.
In
a computer program, an absolute address, (sometimes called an explicit address
or specific address), is a memory address that uniquely identifies a location
in memory. This is different from a relative address, which is not unique and
specifies a location only in relation to somewhere else (the base address). Virtual
memory also adds a level of indirection. Very often, when referring to the word
size of a modern computer, one is also describing the size of virtual memory
addresses of that computer. For example, a computer said to be “32 bits”
usually treats memory addresses as 32 – bit integers; a byte addressable 32 –
bit computer can address 232 = 4,294,967,296 bytes of memory or 4
gigabyte.
BUS
A
bus, in computing is a set of physical connections (cables, printed circuits
etc.) which can be shared by multiple hardware components in order to
communicate with one another. The purpose of bus is to reduce the number of
pathways needed for communication between the components, by carrying out all
communications over a single data channel.
CHARACTERISTICS OF BUS
A
bus is characterised by the amount of information that can be transmitted at
once.
Width
is used to refer to the number of bits that a bus can transmit at once.
Frequency
is the speed of the bus, which is the number of data packets sent or received
per second. It is expressed in Hertz (Hz).
Cycle
is the each time that data is sent or received.
Transfer
speed is the amount of data which it can transport per unit of time. It is the
product of width and frequency.
BUS SUBASSEMBLY
Each
bus is generally constituted of 50 to 100 physical lines, divided into three
subassemblies which are:
(i)
Address bus (sometimes called memory
bus) transports memory addresses which the processor wants to access in order
to read or write data. It is unidirectional bus.
(ii)
Data bus transfers instructions coming
from or going to the processor. It is bidirectional bus.
(iii)
Control bus (or command bus) transports
orders and synchronisation signals coming from the control unit and travelling
to all other hardware components. It is bidirectional bus, as it also transmits
response signals from the hardware.
PRIMARY BUS
There
are two buses within a computer;
Internal
bus (also known as front – side bus (FSB)) allows the processor to communicate
with the system’s central memory (RAM).
Expansion
bus (also known as input/output bus) allows various motherboard components to
communicate with one another. However, it is mainly used to add new devices
using what are called expansion slots connected to the input/output.
TYPES OF REGISTER
(a)
MDR
(Memory Data Register)
This 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.
The MDR is a two – way
register because 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.
(b) CIR (Current Interrupt Register)
It captures the value
that is winning the interrupt arbitration. The CIR is updated at the beginning
of an interrupt acknowledge bus cycle or in response to an update CIR command.
The contents remain in the CIR until another interrupt acknowledge cycle or
update CIR Command occurs.
(c)
User
– Accessible Register: The most common division of user –
accessible registers is into data registers and address registers.
(d)
Data
Registers: They are used to hold numeric values such as
integer and floating – point values.
(e)
GPRs
(General Purpose Registers): They can store both
data and addresses.
(f)
FPRs
(Floating Point Registers): They store floating point numbers
in many
architectures.
(g)
Constant
Registers holds read – only values such as one, or pi.
(h)
Special
Purpose Registers: They hold program state
(i)
Instruction
Registers store the instruction currently being executed.
(j)
Model
– Specific Register (also known as machine – specific
register) store data and settings related to the processor itself.
(k) Control and status register:
It has three types which are program counter, instruction register and status
word (PSW).
DIFFERENCES BETWEEN REGISTERS AND
MAIN MEMORY
|
REGISTER
|
MAIN MEMORY
|
1
|
Registers
are very small but are extremely fast.
|
RAM is
much larger and smaller memory that applications use as a scratch space.
|
2
|
It holds
data temporary
|
It
holds information/data permanently
|
3
|
It serves
as an assistance to the main memory
|
It does
not assist
|
4
|
It is an
extremely fast and expensive form of computer memory.
|
It is
much cheaper.
|
John Von Neumann introduced the idea of the
stored program. Previously data and programs were stored in separate memories.
Von Neumann realised that data and programs are indistinguishable and can
therefore use the same memory. This led to the introduction of compliers which
accepted text as input and produced binary code as output.
The Von Neumann architecture uses a single
processor which follows a linear sequence of fetch – decode – execute. In order
to do this, the processor has to use some special registers.
DATA
TRANSFER SPEED
Computer data bus width indicates how much data
the chip can move through at once and the sizes of address bus indicates how
much the memory chip can handle.
Increasing the data bus will increase the
quantity of data that the bus carry at one time and so speed up the
performance/processing of the computer. A computer with a data bus of 32 lines
is called 32 bits computer and the word length is 32 bits.
Word length is the number of bits the CPU can
process in a single operation.
Comments
Post a Comment