Information Technology Reference
In-Depth Information
can perform frequent operations (such as addition, subtraction, and
multiplication). With such builtin functionality, the capabilities of
the CPU, main memory, and bus can be coordinated, and processing
is fast and convenient—as long as the applications do not require
values beyond the limits presented by the storage size and format.
Computers that use the fixedsize storage approach allocate a pre
determined number of bits for each integer or each real number. We
already have noted that 8 bits or a byte can be used to represent in
tegers from 0 through 255, and computers often have special cir
cuitry to handle such numbers. However, most applications require
significantly larger integers, so computers usually support larger
groupings of bits as well. One of these larger groups of bits is called
a word of storage, but the size of a word varies from one computer
to another. As the cost of memory has decreased and as technology
has allowed more processing capacity to be included on CPU chips,
the number of bits available for an integer has increased.
For example, in the 1970s and 1980s, memory was relatively
small and expensive. Thus, many machines allocated 2 bytes (16
bits) for integers. Following the same analysis used for 1byte num
bers, these 2byte integers could represent numbers from 0 up to
65,535 ( 2 16 1). Alternatively, this same amount of storage could
be split between positive and negative integers, in which case the
range went from 32,768 up to 32,767. To optimize processing of
such numbers, memory storage locations and CPU registers each
contained 16 bits, and busses contained 16 parallel data wires, so all
bits in an integer could be moved from place to place concurrently.
Larger machines in that period may have utilized 32 bits for integers
(or even 48 or 60 bits), but such machines were quite expensive.
As technology has progressed, however, 32 bits for integers has
become common. The transition from 16 bits to 32 bits actually in
volved two basic phases. First, CPU registers and CPU processing
circuitry expanded to 32 bits to allow fast operations on these large
numbers. In this phase, busses and, perhaps, main memory still were
organized around 16bit integers, so movement of data from main
memory to the CPU required two steps. (First half of the data were
moved, then the second half.) Once data finally got into the CPU,
processing could proceed quickly, but getting data there was slow.
Technology took another step forward, however, and soon busses
and main memory expanded to 32 bits as well, allowing an entire
integer to move from one place to another in a single step.
Search WWH ::




Custom Search