Machines, Machine Languages, and Digital Logic: Accumulator Machines Have A Sharply Limited Number of Data
Machines, Machine Languages, and Digital Logic: Accumulator Machines Have A Sharply Limited Number of Data
Machines, Machine Languages, and Digital Logic: Accumulator Machines Have A Sharply Limited Number of Data
1
a) Data Movement Instructions
From the staging point, information is moved into the CPU, where
it becomes part of the processor state, residing in one or another CPU
register.
And additional data type that some machine distinguish is the
address data type.
b) ALU Instruction
In subsequent machines, operands and results of ALU operations
could be located in registers or memory.
c) Branch Instructions
A transfer of control, or a branch, to an instruction other than the
next one in sequence requires computation of a target address, which
is the address to which control is to be transferred.
The bit or bits that described the condition are stored in a register
variously called the processor status word (PSW), the condition code
(CC) register, or the status register.
d) 4-,3-,2-,1-, and 0-Address and General Register Machine Classes
The 4-Address Machines and Operations Memory accesses
required when the instruction execute. In a microcoded design, the
steps requires to execute an instruction are themselves stored as
sequence of microcode instructions that are executed to effect
instruction execution.
The 3-Address Machines and Operations The inclusion within
the CPU of a program counter that always points to the next
instruction eliminates the need to specify the address of the next
instruction in all but the class of branch instructions.
The 2-Address Machines and Operations A reduction to two
addresses can be obtained by storing the result into the memory
address of one of the operands.
2
The 1-Address (Accumulator) Machines and Instructions
requires additional operand to load and store the accumulator’s
contents, however.
The 0-Address (Stack) Computers and Address Formats Notice
that the push and pop operations still require a memory address, and
the word count for the code above is bytes for each push and pop, and
additional byte for expression evaluation, for a total bytes.
e) Access Path to Operands: Addressing Modes
The many different kinds of data structures and program variable
references possible in modern high-level languages have driven
machine architects to develop many sophisticated ways of providing
access paths to operands in memory and CPU registers: addressing
modes.
To access an operand in memory, the CPU must first generate an
address, which it then issues to the memory subsystem. That address is
referred to as an effective address.
The immediate addressing mode, is used to access constants stored
in the instruction.
3
schemes known as register transfer (RT) languages a good method for
incorporating the right level of precision into a computer specification.
4
1) Errors caused by a misinterpretation of the machine description
2) Errors of design and implementation
5
b. The Bus as Data Highway
Eliminating the Multiplexer by Open-Collector Gates To simplify a
brief excursion into electronics.
Eliminating Multiplexer By Using Tri-State Gates A slightly different
form is more commonly used for the present purpose of multiplexed
register transfers.
Register Transfer Using a Tri-State Bus An m-wire tri-state bus can be
used to connect n registers together.
A Register Transfer Bus with Arithmetic Capability Although a single
bus can interconnect registers so that the register transfer Dst Src can
be done for any source and destination register.
Abstract RTN, Concrete RTN, and Control Signals An abstract RTN
describes the register transfer in terms of its effects only. A concrete RTN
it refers to how the register transfer happens in a particular hardware
implementation. The control sequence is a translation of the concrete RTN
to the sequence of control signals needed to accomplish the concrete RTN.
c. Register Transfer Operations and Data Path
Hardware structures that interconnect registers, including arithmetic units
and other data transformers, constitute the data path of a computer. A
collection of register transfers between different sources and destinations
may be implemented by a shared bus connection, provided that two source
values do not need to be moved at the same time.
RTN statements involving data transformation imply the existence of
arithmetic units in the data path.