Professional Documents
Culture Documents
User Manual
80
Document Disclaimer
ZiLOG is a registered trademark of ZiLOG Inc. in the United States and in other countries. All other products
and/or service names mentioned herein may be trademarks of the companies with which they are associated.
©2001 by ZiLOG, Inc. All rights reserved. Information in this publication concerning the devices,
applications, or technology described is intended to suggest possible uses and may be superseded. ZiLOG,
INC. DOES NOT ASSUME LIABILITY FOR OR PROVIDE A REPRESENTATION OF ACCURACY OF
THE INFORMATION, DEVICES, OR TECHNOLOGY DESCRIBED IN THIS DOCUMENT. ZiLOG
ALSO DOES NOT ASSUME LIABILITY FOR INTELLECTUAL PROPERTY INFRINGEMENT
RELATED IN ANY MANNER TO USE OF INFORMATION, DEVICES, OR TECHNOLOGY
DESCRIBED HEREIN OR OTHERWISE. Except with the express written approval of ZiLOG, use of
information, devices, or technology as critical components of life support systems is not authorized. No
licenses are conveyed, implicitly or otherwise, by this document under any intellectual property rights.
80
=&38
8VHU¶V0DQXDO
LLL
Table of Contents
2YHUYLHZ
$UFKLWHFWXUH
&385HJLVWHUV
$ULWKPHWLF/RJLF8QLW$/8
,QVWUXFWLRQ5HJLVWHUDQG&38&RQWURO
3LQ'HVFULSWLRQ
2YHUYLHZ
3LQ)XQFWLRQV
7LPLQJ
2YHUYLHZ
,QVWUXFWLRQ)HWFK
0HPRU\5HDG2U:ULWH
,QSXWRU2XWSXW&\FOHV
%XV5HTXHVW$FNQRZOHGJH&\FOH
,QWHUUXSW5HTXHVW$FNQRZOHGJH&\FOH
1RQ0DVNDEOH,QWHUUXSW5HVSRQVH
+$/7([LW
3RZHU'RZQ$FNQRZOHGJH&\FOH
3RZHU'RZQ5HOHDVH&\FOH
,QWHUUXSW5HVSRQVH
2YHUYLHZ
,QWHUUXSW(QDEOH'LVDEOH
&385HVSRQVH
+DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
+DUGZDUH
0LQLPXP6\VWHP
$GGLQJ5$0
0HPRU\6SHHG&RQWURO
80 7DEOHRI&RQWHQWV
=&38
8VHU¶V0DQXDO
LY
,QWHUIDFLQJ'\QDPLF0HPRULHV
6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
2YHUYLHZRI6RIWZDUH)HDWXUHV
([DPSOHVRI6SHFLILF=,QVWUXFWLRQV
([DPSOHVRI3URJUDPPLQJ7DVNV
=&38,QVWUXFWLRQ'HVFULSWLRQ
2YHUYLHZ
,QVWUXFWLRQ7\SHV
$GGUHVVLQJ0RGHV
,QVWUXFWLRQ2S&RGHV
=,QVWUXFWLRQ6HW
=$VVHPEO\/DQJXDJH
=6WDWXV,QGLFDWRU)ODJV
$GG6XEWUDFW)ODJ
=,QVWUXFWLRQ'HVFULSWLRQ
%LW/RDG*URXS
%LW/RDG*URXS
([FKDQJH%ORFN7UDQVIHUDQG6HDUFK*URXS
%LW$ULWKPHWLF*URXS
*HQHUDO3XUSRVH$ULWKPHWLFDQG&38&RQWURO*URXSV
%LW$ULWKPHWLF*URXS
5RWDWHDQG6KLIW*URXS
%LW6HW5HVHWDQG7HVW*URXS
-XPS*URXS
&DOO$QG5HWXUQ*URXS
,QSXWDQG2XWSXW*URXS
7DEOHRI&RQWHQWV 80
<%27
7UGT U/CPWCN
List of Instructions
$'&$V
$'&+/VV
$''$+/
$''$,;G
$''$,<G
$''$Q
$''$U
$''+/VV
$'',;SS
$'',<UU
$1'V
%,7E+/
%,7E,;G
%,7E,<G
%,7EU
&$//FFQQ
&$//QQ
&&)
&3V
&3'
&3'5
&3,
&3,5
&3/
'$$
'(&,;
'(&,<
'(&P
'(&VV
',
'-1=H
80 /LVWRI,QVWUXFWLRQV
<%27
7UGT U/CPWCN
XK
/LVWRI,QVWUXFWLRQV 80
<%27
7UGT U/CPWCN
XKK
80 /LVWRI,QVWUXFWLRQV
<%27
7UGT U/CPWCN
XKKK
/'63,<
/''
/''5
/',
/',5
1(*
123
25V
27'5
27,5
287&U
287Q$
287'
287,
323,;
323,<
323TT
386+,;
386+,<
386+TT
5(6EP
5(7
5(7FF
5(7,
5(71
5/P
5/$
5/&+/
5/&,;G
5/&,<G
5/&U
5/&$
5/'
55P
/LVWRI,QVWUXFWLRQV 80
<%27
7UGT U/CPWCN
KZ
55$
55&P
55&$
55'
567S
6%&$V
6%&+/VV
6&)
6(7E+/
6(7E,;G
6(7E,<G
6(7EU
6/$P
65$P
65/P
68%V
;25V
80 /LVWRI,QVWUXFWLRQV
<%27
7UGT U/CPWCN
/LVWRI,QVWUXFWLRQV 80
<%27
7UGT U/CPWCN
ZK
List of Figures
)LJXUH=&38%ORFN'LDJUDP
)LJXUH=&385HJLVWHU&RQILJXUDWLRQ
)LJXUH=,23LQ&RQILJXUDWLRQ
)LJXUH%DVLF&387LPLQJ([DPSOH
)LJXUH,QVWUXFWLRQ2S&RGH)HWFK
)LJXUH0HPRU\5HDGRU:ULWH&\FOH
)LJXUH,QSXWRU2XWSXW&\FOHV
)LJXUH%XV5HTXHVW$FNQRZOHGJH&\FOH
)LJXUH,QWHUUXSW5HTXHVW$FNQRZOHGJH&\FOH
)LJXUH1RQ0DVNDEOH,QWHUUXSW5HTXHVW2SHUDWLRQ
)LJXUH+$/7([LW
)LJXUH3RZHU'RZQ$FNQRZOHGJH
)LJXUH3RZHU'RZQ5HOHDVH&\FOH1R
)LJXUH3RZHU'RZQ5HOHDVH&\FOH1R
)LJXUH3RZHU'RZQ5HOHDVH&\FOH1R
)LJXUH0RGH,QWHUUXSW5HVSRQVH0RGH
)LJXUH0LQLPXP=&RPSXWHU6\VWHP
)LJXUH520DQG5$0,PSOHPHQWDWLRQ
)LJXUH$GGLQJ2QH:DLW6WDWHWRDQ0&\FOH
)LJXUH$GGLQJ2QH:DLW6WDWHWR$Q\0HPRU\&\FOH
)LJXUH,QWHUIDFLQJ'\QDPLF5$0V
)LJXUH6KLIWLQJRI%&''LJLWV%\WHV
80 /LVWRI)LJXUHV
<%27
7UGT U/CPWCN
ZKK
/LVWRI)LJXUHV 80
<%27
7UGT U/CPWCN
ZKKK
List of Tables
7DEOH,QWHUUXSW(QDEOH'LVDEOH)OLS)ORSV
7DEOH%XEEOH/LVWLQJ
7DEOH0XOWLSO\/LVWLQJ
7DEOH+H[%LQDU\'HFLPDO&RQYHUVLRQ7DEOH
7DEOH%LW/RDG*URXS/'
7DEOH%LW/RDG*URXS/'386+DQG323
7DEOH([FKDQJHV(;DQG(;;
7DEOH%ORFN7UDQVIHU*URXS
7DEOH%ORFN6HDUFK*URXS
7DEOH%LW$ULWKPHWLFDQG/RJLF
7DEOH*HQHUDO3XUSRVH$)2SHUDWLRQ
7DEOH%LW$ULWKPHWLF
7DEOH5RWDWHVDQG6KLIWV
7DEOH%LW0DQLSXODWLRQ*URXS
7DEOH-XPS&DOODQG5HWXUQ*URXS
7DEOH5HVWDUW*URXS
7DEOH,QSXW*URXS
7DEOH%LW$ULWKPHWLFDQG/RJLF
7DEOH0LVFHOODQHRXV&38&RQWURO
80 /LVWRI7DEOHV
<%27
7UGT U/CPWCN
ZKX
/LVWRI7DEOHV 80
=&38
8VHU¶V0DQXDO
[Y
0DQXDO2EMHFWLYHV
This user manual describes the architecture and instruction set of the Z80
CPU.
$ERXW7KLV0DQXDO
ZiLOG recommends that the user read and understand everything in this
manual before setting up and using the product. However, we recognize
that users have different styles of learning: some will want to set up and
use their new evaluation kit while they read about it; others will open
these pages only to check on a particular specification. Therefore, we
have designed this manual to be used either as a how to procedural
manual or a reference guide to important data.
,QWHQGHG$XGLHQFH
This document is written for ZiLOG customers who are experienced at
working with microprocessors or in writing assembly code or compilers.
0DQXDO2UJDQL]DWLRQ
The Z80 CPU User’s Manual is divided into four chapters.
2YHUYLHZ
Presents an overview of the User’s Manual Architecture, Pin descriptions,
timing and Interrupt Response.
+DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ
Presents examples of the User’s Manual hardware and software.
80 0DQXDO2EMHFWLYHV
8VHU¶V0DQXDO
=&38
[YL
=&38,QVWUXFWLRQ'HVFULSWLRQ
Presents the User’s Manual instruction types, addressing modes and
instruction Op Codes.
=,QVWUXFWLRQ6HW
Presents an overview of the User’s Manual assenbly language, status
indicator flags and the Z80 instructions.
5HODWHG'RFXPHQWV
0DQXDO&RQYHQWLRQV
The following assumptions and conventions are adopted to provide clarity
and ease of use:
8VHRIWKH:RUGV6HWDQG&OHDU
The words set and clear imply that a register bit or a condition contains
the values logical 1 and logical 0, respectively. When either of these
terms is followed by a number, the word logical may not be included, but
it is implied.
1RWDWLRQIRU%LWVDQG6LPLODU5HJLVWHUV
A field of bits within a register is designated as: Register (n–n). For
example: PWM_CR (31–20). A field of bits within a bus is designated as:
Busn–n. For example: PCntl7–4. A range of similar (whole) registers is
designated as: Registern–Registern. For example: OPBCS5–OPBCS0.
80 0DQXDO2EMHFWLYHV
=&38
8VHU¶V0DQXDO
[YLL
8VHRIWKH7HUPV/6%DQG06%
In this document, the terms LSB and MSB, when appearing in upper case,
mean least significant byte and most significant byte, respectively. The
lowercase forms, msb and lsb, mean least significant bit and most
significant bit, respectively.
&RXULHU)RQW
Commands, code lines and fragments, register (and other) mnemonics,
values, equations, and various executable items are distinguished from
general text by the use of the Courier font. This convention is not used
within tables. For example: The STP bit in the CNTR register must be 1.
Where the use of the font is not possible, as in the Index, the name of the
entity is presented in upper case.
+H[DGHFLPDO9DOXHV'HVLJQDWHGE\+
Hexadecimal values are designated by a uppercase H and appear in the
Courier typeface. For example: STAT is set to F8H.
8VHRI$OO8SSHUFDVH/HWWHUV
The use of all uppercase letters designates the names of states and
commands. For example: The receiver can force the SCL line to Low to
force the transmitter into a WAIT state. The bus is considered BUSY after
the Start condition. A START command triggers the processing of the
initialization sequence.
8VHRI,QLWLDO8SSHUFDVH/HWWHUV
Initial uppercase letters designate settings, modes, and conditions in
general text. For example: The Slave receiver leaves the data line High. In
Transmit mode, the byte is sent most significant bit first. The Master can
generate a Stop condition to abort the transfer.
0DQXDO2EMHFWLYHV 80
8VHU¶V0DQXDO
=&38
[YLLL
5HJLVWHU$FFHVV$EEUHYLDWLRQV
Register access is designated by the following abbreviations:
Designation Description
R Read Only
R/W Read/Write
W Write Only
– Unspecified or indeterminate
7UDGHPDUNV
Z80, Z180, Z380 and Z80382 are trademarks of ZiLOG, Inc.
80 0DQXDO2EMHFWLYHV
<%27
7UGT U/CPWCN
2YHUYLHZ
$5&+,7(&785(
The ZiLOG Z80 CPU family of components are fourth-generation
enhanced microprocessors with exceptional computational power. They
offer higher system throughput and more efficient memory utilization
than comparable second- and third-generation microprocessors. The
speed offerings from 6–20 MHz suit a wide range of applications which
migrate software. The internal registers contain 208 bits of read/write
memory that are accessible to the programmer. These registers include
two sets of six general purpose registers which may be used individually
as either 8-bit registers or as 16-bit register pairs. In addition, there are
two sets of accumulator and flag registers.
The Z80 CPU also contains a Stack Pointer, Program Counter, two index
registers, a REFRESH register, and an INTERRUPT register. The CPU is
easy to incorporate into a system since it requires only a single +5V
power source. All output signals are fully decoded and timed to control
standard memory or peripheral circuits; the Z80 CPU is supported by an
extensive family of peripheral controllers.
Figure 1 illustrates the internal architecture and major elements of the
Z80 CPU.
80 2YHUYLHZ
<%27
7UGT U/CPWCN
'DWD%XV
&RQWURO
,QVW
,QWHUQDO'DWD%XV $/8
5HJLVWHU
,QVWUXFWLRQ'HFRGH
DQG
&38&RQWURO
&38DQG
&38
6\VWHP &38
&RQWURO
&RQWURO 5HJLVWHUV
6LJQDOV
$GGUHVV
&RQWURO
%LW
9*1'&/. $GGUHVV%XV
)LJXUH =&38%ORFN'LDJUDP
&385HJLVWHUV
The Z80 CPU contains 208 bits of R/W memory that are available to the
programmer. Figure 2 illustrates how this memory is configured to
eighteen 8-bit registers and four 16-bit registers. All Z80 registers are
implemented using static RAM. The registers include two sets of six
general-purpose registers that may be used individually as 8-bit registers
or in pairs as 16-bit registers. There are also two sets of accumulator and
flag registers and six special-purpose registers.
80 2YHUYLHZ
<%27
7UGT U/CPWCN
0DLQ5HJLVWHU6HW $OWHUQDWH5HJLVWHU6HW
$ ) $
)
% & %
%
*HQHUDO
' ( '
(
3XUSRVH
5HJLVWHUV
+ / +
/
,QWHUUXSW9HFWRU 0HPRU\5HIUHVK
, 5
,QGH[5HJLVWHU ,; 6SHFLDO
3XUSRVH
,QGH[5HJLVWHU ,<
5HJLVWHUV
6WDFN3RLQWHU 63
3URJUDP&RXQWHU 3&
)LJXUH =&385HJLVWHU&RQILJXUDWLRQ
6SHFLDO3XUSRVH5HJLVWHUV
3URJUDP&RXQWHU3&
The program counter holds the 16-bit address of the current instruction
being fetched from memory. The PC is automatically incremented after its
contents have been transferred to the address lines. When a program jump
occurs, the new value is automatically placed in the PC, overriding the
incrementer.
6WDFN3RLQWHU63
The stack pointer holds the 16-bit address of the current top of a stack
located anywhere in external system RAM memory. The external stack
memory is organized as a last-in first-out (LIFO) file. Data can be pushed
onto the stack from specific CPU registers or popped off of the stack to
specific CPU registers through the execution of PUSH and POP instructions.
The data popped from the stack is always the last data pushed onto it. The
80 2YHUYLHZ
<%27
7UGT U/CPWCN
7ZR,QGH[5HJLVWHUV,;DQG,<
The two independent index registers hold a 16-bit base address that is
used in indexed addressing modes. In this mode, an index register is used
as a base to point to a region in memory from which data is to be stored or
retrieved. An additional byte is included in indexed instructions to specify
a displacement from this base. This displacement is specified as a two’s
complement signed integer. This mode of addressing greatly simplifies
many types of programs, especially where tables of data are used.
,QWHUUXSW3DJH$GGUHVV5HJLVWHU,
The Z80 CPU can be operated in a mode where an indirect call to any
memory location can be achieved in response to an interrupt. The I
register is used for this purpose and stores the high order eight bits of the
indirect address while the interrupting device provides the lower eight bits
of the address. This feature allows interrupt routines to be dynamically
located anywhere in memory with minimal access time to the routine.
0HPRU\5HIUHVK5HJLVWHU5
The Z80 CPU contains a memory refresh counter, enabling dynamic
memories to be used with the same ease as static memories. Seven bits of
this 8-bit register are automatically incremented after each instruction
fetch. The eighth bit remains as programmed, resulting from an LD R, A
instruction. The data in the refresh counter is sent out on the lower portion
of the address bus along with a refresh control signal while the CPU is
decoding and executing the fetched instruction. This mode of refresh is
transparent to the programmer and does not slow the CPU operation. The
programmer can load the R register for testing purposes, but this register
is normally not used by the programmer. During refresh, the contents of
the I register are placed on the upper eight bits of the address bus.
80 2YHUYLHZ
<%27
7UGT U/CPWCN
$FFXPXODWRUDQG)ODJ5HJLVWHUV
The CPU includes two independent 8-bit accumulators and associated 8-
bit flag registers. The accumulator holds the results of 8-bit arithmetic or
logical operations while the FLAG register indicates specific conditions
for 8-bit or 1 16-bit operations, such as indicating whether or not the
result of an operation is equal to zero. The programmer selects the
accumulator and flag pair with a single exchange instruction so that it is
possible to work with either pair.
*HQHUDO3XUSRVH5HJLVWHUV
Two matched sets of general-purpose registers, each set containing six 8-bit
registers, may be used individually as 8-bit registers or as 16-bit register
pairs. One set is called BC, DE, and HL while the complementary set is
called BC’, DE’, and HL’. At any one time, the programmer can select either
set of registers to work through a single exchange command for the entire
set. In systems that require fast interrupt response, one set of general-purpose
registers and an ACCUMULATOR/FLAG register may be reserved for handling
this fast routine. One exchange command is executed to switch routines.
This greatly reduces interrupt service time by eliminating the requirement
for saving and retrieving register contents in the external stack during
interrupt or subroutine processing. These general-purpose registers are used
for a wide range of applications. They also simplify programing, specifically
in ROM-based systems where little external read/write memory is available.
$ULWKPHWLF/RJLF8QLW$/8
The 8-bit arithmetic and logical instructions of the CPU are executed in
the ALU. Internally, the ALU communicates with the registers and the
external data bus by using the internal data bus. Functions performed by
the ALU include:
80 2YHUYLHZ
<%27
7UGT U/CPWCN
• Add
• Subtract
• Logical AND
• Logical OR
• Logical Exclusive OR
• Compare
• Left or Right Shifts or Rotates (Arithmetic and Logical)
• Increment
• Decrement
• Set Bit
• Reset Bit
• Test bit
,QVWUXFWLRQ5HJLVWHUDQG&38&RQWURO
As each instruction is fetched from memory, it is placed in the
INSTRUCTION register and decoded. The control sections performs this
function and then generates and supplies the control signals necessary to
read or write data from or to the registers, control the ALU, and provide
required external control signals.
3,1'(6&5,37,21
2YHUYLHZ
The Z80 CPU I/O pins are illustrated in Figure 3 and the function of each
is described in the following paragraphs.
80 2YHUYLHZ
<%27
7UGT U/CPWCN
27 30
M1 A0
31
A1
19 32
MREQ A2
20 33
System IORQ A3
21 34
Control RD A4
22 35 A5
WR
36 A6
28 37
RFSH A7 Address
38 A8 Bus
HALT 18 39 A9
40 A10
24 1
WAIT A11
2 A12
CPU Z80 CPU
Control 16 3 A13
INT
17 4 A14
NMI
5 A15
26
RESET
CPU 25
BUSRQ
Bus 23
Control BUSACK
14
D0
15 D1
CLK 6 12
D2
+5V 11 8
D3 Data
29 7 D4
GND Bus
9
D5
10 D6
13
D7
)LJXUH =,23LQ&RQILJXUDWLRQ
3LQ)XQFWLRQV
$±$
Address Bus (output, active High, tristate). A15-A0 form a 16-bit address
bus. The Address Bus provides the address for memory data bus
exchanges (up to 64 Kbytes) and for I/O device exchanges.
80 2YHUYLHZ
<%27
7UGT U/CPWCN
%86$&.
Bus Acknowledge (output, active Low). Bus Acknowledge indicates to the
requesting device that the CPU address bus, data bus, and control signals
MREQ, IORQ RD, and WR have entered their high-impedance states.
The external circuitry can now control these lines.
%865(4
Bus Request (input, active Low). Bus Request has a higher priority than
NMI and is always recognized at the end of the current machine cycle.
BUSREQ forces the CPU address bus, data bus, and control signals
MREQ IORQ, RD, and WR to go to a high-impedance state so that other
devices can control these lines. BUSREQ is normally wired-OR and
requires an external pull-up for these applications. Extended BUSREQ
periods due to extensive DMA operations can prevent the CPU from
properly refreshing dynamic RAMS.
'±'
Data Bus (input/output, active High, tristate). D7–D0 constitute an
8-bit bidirectional data bus, used for data exchanges with memory and I/O.
+$/7
HALT State (output, active Low). HALT indicates that the CPU has
executed a HALT instruction and is waiting for either a non-maskable or a
maskable interrupt (with the mask enabled) before operation can resume.
During HALT, the CPU executes NOPs to maintain memory refresh.
,17
Interrupt Request (input, active Low). Interrupt Request is generated by
I/O devices. The CPU honors a request at the end of the current
instruction if the internal software-controlled interrupt enable flip-flop
(IFF) is enabled. INT is normally wired-OR and requires an external
pull-up for these applications.
80 2YHUYLHZ
<%27
7UGT U/CPWCN
,254
Input/Output Request (output, active Low, tristate). IORQ indicates that
the lower half of the address bus holds a valid I/O address for an I/O read
or write operation. IORQ is also generated concurrently with M1 during
an interrupt acknowledge cycle to indicate that an interrupt response
vector can be placed on the data bus.
0
Machine Cycle One (output, active Low). M1, together with MREQ,
indicates that the current machine cycle is the opcode fetch cycle of an
instruction execution. M1 together with IORQ, indicates an interrupt
acknowledge cycle.
05(4
Memory Request (output, active Low, tristate). MREQ indicates that the
address bus holds a valid address for a memory read of memory write
operation.
10,
Non-Maskable Interrupt (input, negative edge-triggered). NMI has a
higher priority than INT. NMI is always recognized at the end of the
current instruction, independent of the status of the interrupt enable flip-
flop, and automatically forces the CPU to restart at location 0066H.
5'
Read (output, active Low, tristate). RD indicates that the CPU wants to
read data from memory or an I/O device. The addressed I/O device or
memory should use this signal to gate data onto the CPU data bus.
5(6(7
Reset (input, active Low). RESET initializes the CPU as follows: it resets
the interrupt enable flip-flop, clears the PC and registers I and R, and sets
80 2YHUYLHZ
<%27
7UGT U/CPWCN
the interrupt status to Mode 0. During reset time, the address and data bus
go to a high-impedance state, and all control output signals go to the
inactive state. Notice that RESET must be active for a minimum of three
full clock cycles before the reset operation is complete.
5)6+
Refresh (output, active Low). RFSH, together with MREQ indicates that
the lower seven bits of the system’s address bus can be used as a refresh
address to the system’s dynamic memories.
:$,7
WAIT (input, active Low). WAIT communicates to the CPU that the
addressed memory or I/O devices are not ready for a data transfer. The
CPU continues to enter a WAIT state as long as this signal is active.
Extended WAIT periods can prevent the CPU from properly refreshing
dynamic memory.
:5
Write (output, active Low, tristate). WR indicates that the CPU data bus
holds valid data to be stored at the addressed memory or I/O location.
&/.
Clock (input). Single-phase MOS-level clock.
80 2YHUYLHZ
<%27
7UGT U/CPWCN
7,0,1*
2YHUYLHZ
7KH=&38H[HFXWHVLQVWUXFWLRQVE\VWHSSLQJWKURXJKDSUHFLVHVHWRI
EDVLFRSHUDWLRQV7KHVHLQFOXGH
• Memory Read or Write
• I/O Device Read or Write
• Interrupt Acknowledge
$OOLQVWUXFWLRQVDUHVHULHVRIEDVLFRSHUDWLRQV(DFKRIWKHVHRSHUDWLRQV
FDQWDNHIURPWKUHHWRVL[FORFNSHULRGVWRFRPSOHWHRUWKH\FDQEH
OHQJWKHQHGWRV\QFKURQL]HWKH&38WRWKHVSHHGRIH[WHUQDOGHYLFHV7KH
FORFNSHULRGVDUHUHIHUUHGWRDV7WLPHF\FOHVDQGWKHRSHUDWLRQVDUH
UHIHUUHGWRDV0PDFKLQHF\FOHV)LJXUH LOOXVWUDWHVKRZDW\SLFDO
LQVWUXFWLRQLVVHULHVRIVSHFLILF0DQG7F\FOHV1RWLFHWKDWWKLVLQVWUXFWLRQ
FRQVLVWVRIWKUHHPDFKLQHF\FOHV00DQG07KHILUVWPDFKLQH
F\FOHRIDQ\LQVWUXFWLRQLVDIHWFKF\FOHZKLFKLVIRXUILYHRUVL[7F\FOHV
ORQJXQOHVVOHQJWKHQHGE\WKH:$,7VLJQDOZKLFKLVGHVFULEHGLQWKH
QH[WVHFWLRQ7KHIHWFKF\FOH0LVXVHGWRIHWFKWKHRSFRGHRIWKHQH[W
LQVWUXFWLRQWREHH[HFXWHG6XEVHTXHQWPDFKLQHF\FOHVPRYHGDWD
EHWZHHQWKH&38DQGPHPRU\RU,2GHYLFHVDQGWKH\PD\KDYH
DQ\ZKHUHIURPWKUHHWRILYH7F\FOHVDJDLQWKH\PD\EHOHQJWKHQHGE\
ZDLWVWDWHVWRV\QFKURQL]HWKHH[WHUQDOGHYLFHVWRWKH&387KHIROORZLQJ
SDUDJUDSKVGHVFULEHWKHWLPLQJZKLFKRFFXUVZLWKLQDQ\RIWKHEDVLF
PDFKLQHF\FOHV
'XULQJ7DQGHYHU\VXEVHTXHQW7ZWKH&38VDPSOHVWKH:$,7OLQH
ZLWKWKHIDOOLQJHGJHRI&ORFN,IWKH:$,7OLQHLVDFWLYHDWWKLVWLPH
DQRWKHU:$,7VWDWHLVHQWHUHGGXULQJWKHIROORZLQJF\FOH8VLQJWKLV
WHFKQLTXHWKHUHDGFDQEHOHQJWKHQHGWRPDWFKWKHDFFHVVWLPHRIDQ\
W\SHRIPHPRU\GHYLFH
80 2YHUYLHZ
<%27
7UGT U/CPWCN
7&\FOH
&/.
7 7 7 7 7 7 7 7 7
0DFKLQH&\FOH
0 0 0
2SFRGH)HWFK 0HPRU\5HDG 0HPRU\:ULWH
,QVWUXFWLRQ&\FOH
)LJXUH %DVLF&387LPLQJ([DPSOH
,QVWUXFWLRQ)HWFK
)LJXUH GHSLFWVWKHWLPLQJGXULQJDQ0RSFRGHIHWFKF\FOH7KH3&LV
SODFHGRQWKHDGGUHVVEXVDWWKHEHJLQQLQJRIWKH0F\FOH2QHKDOIFORFN
F\FOHODWHUWKH05(4VLJQDOJRHVDFWLYH$WWKLVWLPHWKHDGGUHVVWRWKH
PHPRU\KDVKDGWLPHWRVWDELOL]HVRWKDWWKHIDOOLQJHGJHRI05(4FDQEH
XVHGGLUHFWO\DVDFKLSHQDEOHFORFNWRG\QDPLFPHPRULHV7KH5'OLQHDOVR
JRHVDFWLYHWRLQGLFDWHWKDWWKHPHPRU\UHDGGDWDVKRXOGEHHQDEOHGRQWR
WKH&38GDWDEXV7KH&38VDPSOHVWKHGDWDIURPWKHPHPRU\RQWKHGDWD
EXVZLWKWKHULVLQJHGJHRIWKHFORFNRIVWDWH7DQGWKLVVDPHHGJHLVXVHG
E\WKH&38WRWXUQRIIWKH5'DQG05(4VLJQDOV7KXVWKHGDWDKDV
DOUHDG\EHHQVDPSOHGE\WKH&38EHIRUHWKH5'VLJQDOEHFRPHVLQDFWLYH
&ORFNVWDWH7DQG7RIDIHWFKF\FOHDUHXVHGWRUHIUHVKG\QDPLF
PHPRULHV7KH&38XVHVWKLVWLPHWRGHFRGHDQGH[HFXWHWKHIHWFKHG
LQVWUXFWLRQVRWKDWQRRWKHURSHUDWLRQFRXOGEHSHUIRUPHGDWWKLVWLPH
'XULQJ7DQG7WKHORZHUVHYHQELWVRIWKHDGGUHVVEXVFRQWDLQDPHPRU\
UHIUHVKDGGUHVVDQGWKH5)6+VLJQDOEHFRPHVDFWLYHWLQGLFDWLQJWKDWD
UHIUHVKUHDGRIDOOG\QDPLFPHPRULHVPXVWEHDFFRPSOLVKHG$Q5'VLJQDO
LVQRWJHQHUDWHGGXULQJUHIUHVKWLPHWRSUHYHQWGDWDIURPGLIIHUHQWPHPRU\
80 2YHUYLHZ
<%27
7UGT U/CPWCN
VHJPHQWVIURPEHLQJJDWHGRQWRWKHGDWDEXV7KH05(4VLJQDOGXULQJ
UHIUHVKWLPHVKRXOGEHXVHGWRSHUIRUPDUHIUHVKUHDGRIDOOPHPRU\
HOHPHQWV7KHUHIUHVKVLJQDOFDQQRWEHXVHGE\LWVHOIEHFDXVHWKHUHIUHVK
DGGUHVVLVRQO\JXDUDQWHHGWREHVWDEOHGXULQJ05(4WLPH
M1 Cycle
T1 T2 T3 T4 T1
CLK
MREQ
RD
WAIT
M1
D7 — D0 IN
RFSH
)LJXUH ,QVWUXFWLRQ2S&RGH)HWFK
0HPRU\5HDG2U:ULWH
)LJXUH LOOXVWUDWHVWKHWLPLQJRIPHPRU\UHDGRUZULWHF\FOHVRWKHUWKDQ
DQ2S&RGHIHWFKF\FOH7KHVHF\FOHVDUHJHQHUDOO\WKUHHFORFNSHULRGV
ORQJXQOHVVZDLWVWDWHVDUHUHTXHVWHGE\WKHPHPRU\WKURXJKWKH:$,7
VLJQDO7KH05(4VLJQDODQGWKH5'VLJQDODUHXVHGWKHVDPHDVLQWKH
IHWFKF\FOH,QDPHPRU\ZULWHF\FOHWKH05(4DOVREHFRPHVDFWLYH
ZKHQWKHDGGUHVVEXVLVVWDEOHVRWKDWLWFDQEHXVHGGLUHFWO\DVDFKLS
HQDEOHIRUG\QDPLFPHPRULHV7KH:5OLQHLVDFWLYHZKHQGDWDRQWKH
80 2YHUYLHZ
<%27
7UGT U/CPWCN
GDWDEXVLVVWDEOHVRWKDWLWFDQEHXVHGGLUHFWO\DVD5:SXOVHWRYLUWXDOO\
DQ\W\SHRIVHPLFRQGXFWRUPHPRU\)XUWKHUPRUHWKH:5VLJQDOJRHV
LQDFWLYHRQHKDOI7VWDWHEHIRUHWKHDGGUHVVDQGGDWDEXVFRQWHQWVDUH
FKDQJHGVRWKDWWKHRYHUODSUHTXLUHPHQWVIRUDOPRVWDQ\W\SHRI
VHPLFRQGXFWRUPHPRU\W\SHLVPHW
T2 T3 T1 T2 T3
CLK
A15 — A0 Memory Address Memory Address
MREQ
RD
WR
D7 — D0 In Data Out
WAIT
)LJXUH 0HPRU\5HDGRU:ULWH&\FOH
,QSXWRU2XWSXW&\FOHV
)LJXUH LOOXVWUDWHVDQ,2UHDGRU,2ZULWHRSHUDWLRQ'XULQJ,2
RSHUDWLRQVDVLQJOHZDLWVWDWHLVDXWRPDWLFDOO\LQVHUWHG7KHUHDVRQLVWKDW
GXULQJ,2RSHUDWLRQVWKHWLPHIURPZKHQWKH,254VLJQDOJRHVDFWLYH
XQWLOWKH&38PXVWVDPSOHWKH:$,7OLQHLVYHU\VKRUW:LWKRXWWKLVH[WUD
VWDWHVXIILFLHQWWLPHGRHVQRWH[LVWIRUDQ,2SRUWWRGHFRGHLWVDGGUHVV
DQGDFWLYDWHWKH:$,7OLQHLIDZDLWLVUHTXLUHG$OVRZLWKRXWWKLVZDLW
VWDWHLWLVGLIILFXOWWRGHVLJQ026,2GHYLFHVWKDWFDQRSHUDWHDWIXOO&38
VSHHG'XULQJWKLVZDLWVWDWHWLPHWKH:$,7UHTXHVWVLJQDOLVVDPSOHG
80 2YHUYLHZ
<%27
7UGT U/CPWCN
'XULQJDUHDG,2RSHUDWLRQWKH5'OLQHLVXVHGWRHQDEOHWKHDGGUHVVHG
SRUWRQWRWKHGDWDEXVMXVWDVLQWKHFDVHRIDPHPRU\UHDG)RU,2ZULWH
RSHUDWLRQVWKH:5OLQHLVXVHGDVDFORFNWRWKH,2SRUW
T1 T2 TW* T3 T1
CLK
IORQ
RD
Read
Cycle
D7 — D0 In
WAIT
WR Write
Cycle
D7 — D0 Out
)LJXUH ,QSXWRU2XWSXW&\FOHV
%XV5HTXHVW$FNQRZOHGJH&\FOH
)LJXUH LOOXVWUDWHVWKHWLPLQJIRUD%XV5HTXHVW$FNQRZOHGJHF\FOH7KH
%865(4VLJQDOLVVDPSOHGE\WKH&38ZLWKWKHULVLQJHGJHRIWKHODVW
FORFNSHULRGRIDQ\PDFKLQHF\FOH,IWKH%865(4VLJQDOLVDFWLYHWKH
&38VHWVLWVDGGUHVVGDWDDQGWULVWDWHFRQWUROVLJQDOVWRWKHKLJKLPSHGDQFH
VWDWHZLWKWKHULVLQJHGJHRIWKHQH[WFORFNSXOVH$WWKDWWLPHDQ\H[WHUQDO
GHYLFHFDQFRQWUROWKHEXVHVWRWUDQVIHUGDWDEHWZHHQPHPRU\DQG,2
GHYLFHV7KLVRSHUDWLRQLVJHQHUDOO\NQRZQDV'LUHFW0HPRU\$FFHVV
>'0$@XVLQJF\FOHVWHDOLQJ7KHPD[LPXPWLPHIRUWKH&38WRUHVSRQGWR
DEXVUHTXHVWLVWKHOHQJWKRIDPDFKLQHF\FOHDQGWKHH[WHUQDOFRQWUROOHUFDQ
80 2YHUYLHZ
<%27
7UGT U/CPWCN
PDLQWDLQFRQWURORIWKHEXVIRUDVPDQ\FORFNF\FOHVDVLVUHTXLUHG,IYHU\
ORQJ'0$F\FOHVDUHXVHGDQGG\QDPLFPHPRULHVDUHXVHGWKHH[WHUQDO
FRQWUROOHUDOVRSHUIRUPVWKHUHIUHVKIXQFWLRQ7KLVVLWXDWLRQRQO\RFFXUVLI
YHU\ODUJHEORFNVRIGDWDDUHWUDQVIHUUHGXQGHU'0$FRQWURO'XULQJDEXV
UHTXHVWF\FOHWKH&38FDQQRWEHLQWHUUXSWHGE\HLWKHUDQ10,RUDQ,17
VLJQDO
Any M Cycle Bus Available Status
Last T State TX TX TX T1
CLK
BUSREQ
Sample Sample
BUSACK
A15 — A0
D7 — D0
MREQ, RD
WR. IORQ, Floating
RFSH
)LJXUH %XV5HTXHVW$FNQRZOHGJH&\FOH
,QWHUUXSW5HTXHVW$FNQRZOHGJH&\FOH
)LJXUH LOOXVWUDWHVWKHWLPLQJDVVRFLDWHGZLWKDQLQWHUUXSWF\FOH7KH&38
VDPSOHVWKHLQWHUUXSWVLJQDO,17ZLWKWKHULVLQJHGJHRIWKHODVWFORFNDW
WKHHQGRIDQ\LQVWUXFWLRQ7KHVLJQDOLVQRWDFFHSWHGLIWKHLQWHUQDO&38
VRIWZDUHFRQWUROOHGLQWHUUXSWHQDEOHIOLSIORSLVQRWVHWRULIWKH%865(4
VLJQDOLVDFWLYH:KHQWKHVLJQDOLVDFFHSWHGDVSHFLDO0F\FOHLV
JHQHUDWHG'XULQJWKLVVSHFLDO0F\FOHWKH,254VLJQDOEHFRPHVDFWLYH
LQVWHDGRIWKHQRUPDO05(4WRLQGLFDWHWKDWWKHLQWHUUXSWLQJGHYLFHFDQ
SODFHDQELWYHFWRURQWKHGDWDEXV7ZRZDLWVWDWHVDUHDXWRPDWLFDOO\
DGGHGWRWKLVF\FOH7KHVHVWDWHVDUHDGGHGVRWKDWDULSSOHSULRULW\LQWHUUXSW
VFKHPHFDQEHHDVLO\LPSOHPHQWHG7KHWZRZDLWVWDWHVDOORZVXIILFLHQW
80 2YHUYLHZ
<%27
7UGT U/CPWCN
WLPHIRUWKHULSSOHVLJQDOVWRVWDELOL]HDQGLGHQWLI\ZKLFK
,2GHYLFHPXVWLQVHUWWKHUHVSRQVHYHFWRU5HIHUWR&KDSWHUIRUGHWDLOVRQ
KRZWKHLQWHUUXSWUHVSRQVHYHFWRULVXWLOL]HGE\WKH&38
CLK
INT
A15 — A0
PC Refresh
M1
MREQ
IORQ
D7 — D0 In
WAIT
RD
)LJXUH ,QWHUUXSW5HTXHVW$FNQRZOHGJH&\FOH
1RQ0DVNDEOH,QWHUUXSW5HVSRQVH
Figure 10 illustrates the request/acknowledge cycle for the non-maskable
interrupt. This signal is sampled at the same time as the interrupt line, but
this line takes priority over the normal interrupt and it can not be disabled
under software control. Its usual function is to provide immediate
response to important signals such as an impending power failure. The
CPU response to a non-maskable interrupt is similar to a normal memory
read operation. The only difference is that the content of the data bus is
ignored while the processor automatically stores the PC in the external
stack and jumps to location 0066H. The service routine for the non-
maskable interrupt must begin at this location if this interrupt is used.
80 2YHUYLHZ
<%27
7UGT U/CPWCN
Last M Cycle M1
Last T State T1 T2 T3 T4 T1
CLK
NMI
A15 — A0 PC Refresh
M1
MREQ
RD
RFSH
)LJXUH 1RQ0DVNDEOH,QWHUUXSW5HTXHVW2SHUDWLRQ
+$/7([LW
:KHQHYHUDVRIWZDUH+$/7LQVWUXFWLRQLVH[HFXWHGWKH&38H[HFXWHV
123VXQWLODQLQWHUUXSWLVUHFHLYHGHLWKHUDQRQPDVNDEOHRUDPDVNDEOH
LQWHUUXSWZKLOHWKHLQWHUUXSWIOLSIORSLVHQDEOHG7KHWZRLQWHUUXSWOLQHV
DUHVDPSOHGZLWKWKHULVLQJFORFNHGJHGXULQJHDFK7VWDWHDVGHSLFWHGLQ
)LJXUH ,IDQRQPDVNDEOHLQWHUUXSWKDVEHHQUHFHLYHGRUDPDVNDEOH
LQWHUUXSWKDVEHHQUHFHLYHGDQGWKHLQWHUUXSWHQDEOHIOLSIORSLVVHWWKHQWKH
+$/7VWDWHLVH[LWHGRQWKHQH[WULVLQJFORFNHGJH7KHIROORZLQJF\FOHLV
DQLQWHUUXSWDFNQRZOHGJHF\FOHFRUUHVSRQGLQJWRWKHW\SHRILQWHUUXSWWKDW
ZDVUHFHLYHG,IERWKDUHUHFHLYHGDWWKLVWLPHWKHQWKHQRQPDVNDEOHRQH
LVDFNQRZOHGJHGVLQFHLWKDVKLJKHVWSULRULW\7KHSXUSRVHRIH[HFXWLQJ
123LQVWUXFWLRQVZKLOHLQWKH+$/7VWDWHLVWRNHHSWKHPHPRU\UHIUHVK
VLJQDOVDFWLYH(DFKF\FOHLQWKH+$/7VWDWHLVDQRUPDO0IHWFKF\FOH
H[FHSWWKDWWKHGDWDUHFHLYHGIURPWKHPHPRU\LVLJQRUHGDQGD123
LQVWUXFWLRQLVIRUFHGLQWHUQDOO\WRWKH&387KH+$/7DFNQRZOHGJHVLJQDO
LVDFWLYHGXULQJWKLVWLPHLQGLFDWLQJWKDWWKHSURFHVVRULVLQWKH+$/7VWDWH
80 2YHUYLHZ
<%27
7UGT U/CPWCN
M1 M1
T4 T1 T2 T3 T4 T1 T2
CLK
HALT
RD or
NMI
HALT Instruction is repeated during this Memory Cycle
)LJXUH +$/7([LW
3RZHU'RZQ$FNQRZOHGJH&\FOH
:KHQWKHFORFNLQSXWWRWKH&026=&38LVVWRSSHGDWHLWKHUD+LJK
RU/RZOHYHOWKH&026=&38VWRSVLWVRSHUDWLRQDQGPDLQWDLQVDOO
UHJLVWHUVDQGFRQWUROVLJQDOV+RZHYHU,&&VWDQGE\VXSSO\FXUUHQWLV
JXDUDQWHHGRQO\ZKHQWKHV\VWHPFORFNLVVWRSSHGDWD/RZOHYHOGXULQJ
7RIWKHPDFKLQHF\FOHIROORZLQJWKHH[HFXWLRQRIWKH+$/7LQVWUXFWLRQ
7KHWLPLQJGLDJUDPIRUWKHSRZHUGRZQIXQFWLRQZKHQLPSOHPHQWHG
ZLWKWKH+$/7LQVWUXFWLRQLVVKRZQLQ)LJXUH
T1 T2 T3 T4 T1 T2 T3 T4
CLK
M1
HALT
)LJXUH 3RZHU'RZQ$FNQRZOHGJH
80 2YHUYLHZ
<%27
7UGT U/CPWCN
3RZHU'RZQ5HOHDVH&\FOH
7KHV\VWHPFORFNPXVWEHVXSSOLHGWRWKH&026=&38WRUHOHDVHWKH
SRZHUGRZQVWDWH:KHQWKHV\VWHPFORFNLVVXSSOLHGWRWKH&/.LQSXW
WKH&026=&38UHVWDUWVRSHUDWLRQVIURPWKHSRLQWDWZKLFKWKH
SRZHUGRZQVWDWHZDVLPSOHPHQWHG7KHWLPLQJGLDJUDPVIRUWKHUHOHDVH
IURPSRZHUGRZQPRGHDUHIHDWXUHGLQ)LJXUH DQG
:KHQWKH+$/7LQVWUXFWLRQLVH[HFXWHGWRHQWHUWKHSRZHUGRZQVWDWH
WKH&026=&38DOVRHQWHUVWKH+$/7VWDWH$QLQWHUUXSWVLJQDO
HLWKHU10,RU$17RUD5(6(7VLJQDOPXVWEHDSSOLHGWRWKH&38DIWHU
WKHV\VWHPFORFNLVVXSSOLHGLQRUGHUWRUHOHDVHWKHSRZHUGRZQVWDWH
6 6 6 6 6
%.-
0/+
/
*#.6
)LJXUH 3RZHU'RZQ5HOHDVH&\FOH1R
T1 T2 T3 T4
CLK
RESET
M1
HALT
)LJXUH 3RZHU'RZQ5HOHDVH&\FOH1R
80 2YHUYLHZ
<%27
7UGT U/CPWCN
T1 T2 T3 T4 T1 T2 TWA TWA
CLK
INT
M1
HALT
)LJXUH 3RZHU'RZQ5HOHDVH&\FOH1R
80 2YHUYLHZ
<%27
7UGT U/CPWCN
,17(558375(63216(
2YHUYLHZ
$QLQWHUUXSWDOORZVSHULSKHUDOGHYLFHVWRVXVSHQG&38RSHUDWLRQDQGIRUFH
WKH&38WRVWDUWDSHULSKHUDOVHUYLFHURXWLQH7KLVVHUYLFHURXWLQHXVXDOO\
LQYROYHVWKHH[FKDQJHRIGDWDVWDWXVRUFRQWUROLQIRUPDWLRQEHWZHHQWKH
&38DQGWKHSHULSKHUDO:KHQWKHVHUYLFHURXWLQHLVFRPSOHWHGWKH&38
UHWXUQVWRWKHRSHUDWLRQIURPZKLFKLWZDVLQWHUUXSWHG
,QWHUUXSW(QDEOH'LVDEOH
7KH=&38KDVWZRLQWHUUXSWLQSXWVDVRIWZDUHPDVNDEOHLQWHUUXSW
,17DQGDQRQPDVNDEOHLQWHUUXSW10,7KHQRQPDVNDEOHLQWHUUXSW
FDQQRWEHGLVDEOHGE\WKHSURJUDPPHUDQGLVDFFHSWHGZKHQHYHUDSHULSK
HUDOGHYLFHUHTXHVWVLW7KLVLQWHUUXSWLVJHQHUDOO\UHVHUYHGIRUYHU\LPSRU
WDQWIXQFWLRQVWKDWFDQEHHQDEOHGRUGLVDEOHGVHOHFWLYHO\E\WKH
SURJUDPPHU7KLVURXWLQHDOORZVWKHSURJUDPPHUWRGLVDEOHWKHLQWHUUXSW
GXULQJSHULRGVZKHQKLVSURJUDPKDVWLPLQJFRQVWUDLQWVWKDWGRQRWDOORZ
LQWHUUXSW,QWKH=&38WKHUHLVDQLQWHUUXSWHQDEOHIOLSIORS,))WKDW
LVVHWRUUHVHWE\WKHSURJUDPPHUXVLQJWKH(QDEOH,QWHUUXSW(,DQG
'LVDEOH,QWHUUXSW',LQVWUXFWLRQV:KHQWKH,))LVUHVHWDQLQWHUUXSW
FDQQRWEHDFFHSWHGE\WKH&38
7KHWZRHQDEOHIOLSIORSVDUH,))DQG,))
IFF1 IFF2
Disables interrupts Temporary storage
from being accepted location for IFF1
7KHVWDWHRI,))LVXVHGWRLQKLELWLQWHUUXSWVZKLOH,))LVXVHGDVDWHPSR
UDU\VWRUDJHORFDWLRQIRU,))
80 2YHUYLHZ
<%27
7UGT U/CPWCN
$&38UHVHWIRUFHVERWKWKH,))DQG,))WRWKHUHVHWVWDWHZKLFKGLVDEOHV
LQWHUUXSWV,QWHUUXSWVFDQEHHQDEOHGDWDQ\WLPHE\DQ(,LQVWUXFWLRQIURP
WKHSURJUDPPHU:KHQDQ(,LQVWUXFWLRQLVH[HFXWHGDQ\SHQGLQJLQWHUUXSW
UHTXHVWLVQRWDFFHSWHGXQWLODIWHUWKHLQVWUXFWLRQIROORZLQJ(,LVH[HFXWHG
7KLVVLQJOHLQVWUXFWLRQGHOD\LVQHFHVVDU\ZKHQWKHQH[WLQVWUXFWLRQLVD
UHWXUQLQVWUXFWLRQ,QWHUUXSWVDUHQRWDOORZHGXQWLODUHWXUQLVFRPSOHWHG
7KH(,LQVWUXFWLRQVHWVERWK,))DQG,))WRWKHHQDEOHVWDWH:KHQWKH
&38DFFHSWVDPDVNDEOHLQWHUUXSWERWK,))DQG,))DUHDXWRPDWLFDOO\
UHVHWLQKLELWLQJIXUWKHULQWHUUXSWVXQWLOWKHSURJUDPPHULVVXHVDQHZ(O
LQVWUXFWLRQ1RWHWKDWIRUDOORIWKHSUHYLRXVFDVHV,))DQG,))DUH
DOZD\VHTXDO
7KHSXUSRVHRI,))LVWRVDYHWKHVWDWXVRI,))ZKHQDQRQPDVNDEOH
LQWHUUXSWRFFXUV:KHQDQRQPDVNDEOHLQWHUUXSWLVDFFHSWHG,))UHVHWV
WRSUHYHQWIXUWKHULQWHUUXSWVXQWLOUHHQDEOHGE\WKHSURJUDPPHU7KXV
DIWHUDQRQPDVNDEOHLQWHUUXSWLVDFFHSWHGPDVNDEOHLQWHUUXSWVDUH
GLVDEOHGEXWWKHSUHYLRXVVWDWHRI,))KDVEHHQVDYHGVRWKDWWKH
FRPSOHWHVWDWHRIWKH&38MXVWSULRUWRWKHQRQPDVNDEOHLQWHUUXSWFDQEH
UHVWRUHGDWDQ\WLPH:KHQDLoadRegisterAwithRegisterILD
AILQVWUXFWLRQRUDLoadRegisterAwithRegisterRLDAR
LQVWUXFWLRQLVH[HFXWHGWKHVWDWHRI,))LVFRSLHGWRWKHSDULW\IODJZKHUH
LWFDQEHWHVWHGRUVWRUHG
$VHFRQGPHWKRGRIUHVWRULQJWKHVWDWXVRI,))LVWKURXJKWKHH[HFXWLRQRI
DReturnFromNonMaskableInterrupt5(71LQVWUXFWLRQ7KLV
LQVWUXFWLRQLQGLFDWHVWKDWWKHQRQPDVNDEOHLQWHUUXSWVHUYLFHURXWLQHLV
FRPSOHWHDQGWKHFRQWHQWVRI,))DUHQRZFRSLHGEDFNLQWR,))VRWKDW
WKHVWDWXVRI,))MXVWSULRUWRWKHDFFHSWDQFHRIWKHQRQPDVNDEOHLQWHUUXSW
LVUHVWRUHGDXWRPDWLFDOO\
7DEOH LVDVXPPDU\RIWKHHIIHFWRIGLIIHUHQWLQVWUXFWLRQVRQWKHWZR
HQDEOHIOLSIORSV
80 2YHUYLHZ
<%27
7UGT U/CPWCN
7DEOH,QWHUUXSW(QDEOH'LVDEOH)OLS)ORSV
&385HVSRQVH
1RQ0DVNDEOH
7KH&38DOZD\VDFFHSWVDQRQPDVNDEOHLQWHUUXSW:KHQWKLVRFFXUVWKH
&38LJQRUHVWKHQH[WLQVWUXFWLRQWKDWLWIHWFKHVDQGLQVWHDGSHUIRUPVD
UHVWDUWWRORFDWLRQ+7KH&38IXQFWLRQVDVLILWKDGUHF\FOHGDUHVWDUW
LQVWUXFWLRQEXWWRDORFDWLRQRWKHUWKDQRQHRIWKHHLJKWVRIWZDUHUHVWDUWORFD
WLRQV$UHVWDUWLVPHUHO\DFDOOWRDVSHFLILFDGGUHVVLQSDJHRIPHPRU\
7KH&38FDQEHSURJUDPPHGWRUHVSRQGWRWKHPDVNDEOHLQWHUUXSWLQDQ\
RQHRIWKUHHSRVVLEOHPRGHV
0RGH
7KLVPRGHLVVLPLODUWRWKH$LQWHUUXSWUHVSRQVHPRGH:LWKWKLV
PRGHWKHLQWHUUXSWLQJGHYLFHFDQSODFHDQ\LQVWUXFWLRQRQWKHGDWDEXVDQG
WKH&38H[HFXWHVLW7KXVWKHLQWHUUXSWLQJGHYLFHSURYLGHVWKHQH[WLQVWUXF
WLRQWREHH[HFXWHG2IWHQWKLVLVDUHVWDUWLQVWUXFWLRQEHFDXVHWKHLQWHU
UXSWLQJGHYLFHRQO\QHHGVXSSO\DVLQJOHE\WHLQVWUXFWLRQ$OWHUQDWLYHO\DQ\
80 2YHUYLHZ
<%27
7UGT U/CPWCN
RWKHULQVWUXFWLRQVXFKDVDE\WHFDOOWRDQ\ORFDWLRQLQPHPRU\FRXOGEH
H[HFXWHG
7KHQXPEHURIFORFNF\FOHVQHFHVVDU\WRH[HFXWHWKLVLQVWUXFWLRQLVWZR
PRUHWKDQWKHQRUPDOQXPEHUIRUWKHLQVWUXFWLRQ7KLVRFFXUVEHFDXVHWKH
&38DXWRPDWLFDOO\DGGVWZRZDLWVWDWHVWRDQ,QWHUUXSWUHVSRQVHF\FOHWR
DOORZVXIILFLHQWWLPHWRLPSOHPHQWDQH[WHUQDOGDLV\FKDLQIRUSULRULW\
FRQWURO)LJXUH DQG)LJXUH LOOXVWUDWHWKHGHWDLOHGWLPLQJIRUDQLQWHUUXSW
UHVSRQVH$IWHUWKHDSSOLFDWLRQRI5(6(7WKH&38DXWRPDWLFDOO\HQWHUV
LQWHUUXSW0RGH
0RGH
:KHQWKLVPRGHLVVHOHFWHGE\WKHSURJUDPPHUWKH&38UHVSRQGVWRDQ
LQWHUUXSWE\H[HFXWLQJDUHVWDUWWRORFDWLRQ+7KXVWKHUHVSRQVHLV
LGHQWLFDOWRWKDWIRUDQRQPDVNDEOHLQWHUUXSWH[FHSWWKDWWKHFDOOORFDWLRQLV
+LQVWHDGRI+7KHQXPEHURIF\FOHVUHTXLUHGWRFRPSOHWHWKH
UHVWDUWLQVWUXFWLRQLVWZRPRUHWKDQQRUPDOGXHWRWKHWZRDGGHGZDLWVWDWHV
0RGH
7KLVPRGHLVWKHPRVWSRZHUIXOLQWHUUXSWUHVSRQVHPRGH:LWKDVLQJOH
ELWE\WHIURPWKHXVHUDQLQGLUHFWFDOOFDQEHPDGHWRDQ\PHPRU\ORFDWLRQ
,QWKLVPRGHWKHSURJUDPPHUPDLQWDLQVDWDEOHRIELWVWDUWLQJDGGUHVVHV
IRUHYHU\LQWHUUXSWVHUYLFHURXWLQH7KLVWDEOHPD\EHORFDWHGDQ\ZKHUHLQ
PHPRU\:KHQDQLQWHUUXSWLVDFFHSWHGDELWSRLQWHUPXVWEHIRUPHGWR
REWDLQWKHGHVLUHGLQWHUUXSWVHUYLFHURXWLQHVWDUWLQJDGGUHVVIURPWKHWDEOH
7KHXSSHUHLJKWELWVRIWKLVSRLQWHULVIRUPHGIURPWKHFRQWHQWVRIWKH,
UHJLVWHU7KHIUHJLVWHUPXVWEHORDGHGZLWKWKHDSSOLFDEOHYDOXHE\WKH
SURJUDPPHUVXFKDVLDIA$&38UHVHWFOHDUVWKHIUHJLVWHUVRWKDWLWLV
LQLWLDOL]HGWR]HUR7KHORZHUHLJKWELWVRIWKHSRLQWHUPXVWEHVXSSOLHGE\
WKHLQWHUUXSWLQJGHYLFH2QO\VHYHQELWVDUHUHTXLUHGIURPWKHLQWHUUXSWLQJ
GHYLFHEHFDXVHWKHOHDVWVLJQLILFDQWELWPXVWEHD]HUR7KLVLVUHTXLUHG
80 2YHUYLHZ
<%27
7UGT U/CPWCN
EHFDXVHWKHSRLQWHULVXVHGWRJHWWZRDGMDFHQWE\WHVWRIRUPDFRPSOHWH
ELWVHUYLFHURXWLQHVWDUWLQJDGGUHVVDQGWKHDGGUHVVHVPXVWDOZD\VVWDUWLQ
HYHQORFDWLRQV
Starting Address
Pointed to by:
Interrupt
Service
Low Order I Register Seven Bits From
Routine 0
Starting Contents Peripheral
High Order
Address
Table
)LJXUH 0RGH,QWHUUXSW5HVSRQVH0RGH
7KHILUVWE\WHLQWKHWDEOHLVWKHOHDVWVLJQLILFDQWORZRUGHUSRUWLRQRIWKH
DGGUHVV7KHSURJUDPPHUPXVWFRPSOHWHWKLVWDEOHZLWKWKHFRUUHFW
DGGUHVVHVEHIRUHDQ\LQWHUUXSWVDUHDFFHSWHG
7KHSURJUDPPHUFDQFKDQJHWKLVWDEOHE\VWRULQJLWLQ5HDG:ULWH
0HPRU\ZKLFKDOVRDOORZVLQGLYLGXDOSHULSKHUDOVWREHVHUYLFHGE\
GLIIHUHQWVHUYLFHURXWLQHV
:KHQWKHLQWHUUXSWLQJGHYLFHVXSSOLHVWKHORZHUSRUWLRQRIWKHSRLQWHUWKH
&38DXWRPDWLFDOO\SXVKHVWKHSURJUDPFRXQWHURQWRWKHVWDFNREWDLQVWKH
VWDUWLQJDGGUHVVIURPWKHWDEOHDQGSHUIRUPVDMXPSWRWKLVDGGUHVV7KLV
PRGHRIUHVSRQVHUHTXLUHVFORFNSHULRGVWRFRPSOHWHVHYHQWRIHWFKWKH
ORZHUHLJKWELWVIURPWKHLQWHUUXSWLQJGHYLFHVL[WRVDYHWKHSURJUDP
FRXQWHUDQGVL[WRREWDLQWKHMXPSDGGUHVV
7KH=SHULSKHUDOGHYLFHVLQFOXGHDGDLV\FKDLQSULRULW\LQWHUUXSWVWUXF
WXUHWKDWDXWRPDWLFDOO\VXSSOLHVWKHSURJUDPPHGYHFWRUWRWKH&38GXULQJ
LQWHUUXSWDFNQRZOHGJH5HIHUWRWKH=&383HULSKHUDOV8VHU0DQXDOIRU
PRUHFRPSOHWHLQIRUPDWLRQ
80 2YHUYLHZ
<%27
7UGT U/CPWCN
+DUGZDUHDQG6RIWZDUH
,PSOHPHQWDWLRQ([DPSOHV
+$5':$5(
0LQLPXP6\VWHP
7KLVFKDSWHULVDQLQWURGXFWLRQWRLPSOHPHQWLQJV\VWHPVWKDWXVHWKH=
&38)LJXUH LOOXVWUDWHVDVLPSOH=V\VWHP
$Q\=V\VWHPPXVWLQFOXGHWKHIROORZLQJHOHPHQWV
• 5V Power Supply
• Oscillator
• Memory Devices
• I/O Circuits
• CPU
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
26& 93RZHU6XSSO\
&/.
$GGUHVV
,1
05(4
&(
.%LW
5' 520
&(
=
9 'DWD
&38
'DWD%XV 287
&/.
5(6(7 ,254
,254 =3,2
0
&' $
0 3RUW$ 3RUW%
2XWSXW'DWD ,QSXW'DWD
)LJXUH 0LQLPXP=&RPSXWHU6\VWHP
%HFDXVHWKH=&38UHTXLUHVRQO\DVLQJOH9SRZHUVXSSO\PRVWVPDOO
V\VWHPVFDQEHLPSOHPHQWHGXVLQJRQO\WKLVVLQJOHVXSSO\
7KHH[WHUQDOPHPRU\FDQEHDQ\PL[WXUHRIVWDQGDUG5$0520RU
3520,Q)LJXUH DVLQJOH.ELW520.E\WHVFRPSULVHVWKHHQWLUH
PHPRU\V\VWHP7KH=LQWHUQDOUHJLVWHUFRQILJXUDWLRQFRQWDLQVVXIILFLHQW
5HDG:ULWHVWRUDJHUHTXLULQJQRH[WHUQDO5$0PHPRU\
,2FLUFXLWVDOORZFRPSXWHUV\VWHPVWRLQWHUIDFHZLWKWKHH[WHUQDOGHYLFHV
,Q)LJXUH WKHRXWSXWLVDQELWFRQWUROYHFWRUDQGWKHLQSXWLVDQELW
VWDWXVZRUG7KHLQSXWGDWDFDQEHJDWHGWRWKHGDWDEXVXVLQJDQ\VWDQGDUG
WKUHHVWDWHGULYHUZKLOHWKHRXWSXWGDWDFDQEHODWFKHGZLWKDQ\W\SHRIVWDQ
GDUG77/ODWFK$=3,2VHUYHVDVWKH,2FLUFXLW7KLVVLQJOHFLUFXLW
DWWDFKHVWRWKHGDWDEXVDVLQGLFDWHGDQGSURYLGHVWKHUHTXLUHGELWVRI
77/FRPSDWLEOH,25HIHUWRWKH=&383HULSKHUDOV8VHU¶V0DQXDOIRU
GHWDLOVRQWKHRSHUDWLRQRIWKLVFLUFXLW7KLVSRZHUIXOFRPSXWHULVEXLOWZLWK
RQO\WKUHH/6,FLUFXLWVDVLPSOHRVFLOODWRUDQGDVLQJOH9SRZHUVXSSO\
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
$GGLQJ5$0
0RVWFRPSXWHUV\VWHPVUHTXLUHVRPHH[WHUQDO5HDG:ULWHPHPRU\IRUGDWD
VWRUDJHDQGVWDFNLPSOHPHQWDWLRQ)LJXUH LOOXVWUDWHVKRZE\WHVRI
VWDWLFPHPRU\DUHDGGHGWRWKHSUHYLRXVH[DPSOHLQ)LJXUH 7KHPHPRU\
VSDFHLVDVVXPHGWREHRUJDQL]HGDVIROORZV
Address:
0000H
1 Kbyte ROM
03FFH
0400H
256 Bytes RAM
04FFFH
,QWKLVGLDJUDPWKHDGGUHVVVSDFHLVGHVFULEHGLQKH[DGHFLPDOQRWDWLRQ
$GGUHVVELW$VHSDUDWHVWKH520VSDFHIURPWKH5$0VSDFHDOORZLQJ
WKLVDGGUHVVWREHXVHGIRUWKHFKLSVHOHFWIXQFWLRQ)RUODUJHUDPRXQWVRI
H[WHUQDO520RU5$0DVLPSOH77/GHFRGHULVUHTXLUHGWRIRUPWKH
FKLSVHOHFWV
Address Bus
MREQ • RD RD MRQ RD
CE1 OD CE1 OD CE1 MRQ
1K x 8 256 x 4 256 x 4
A10 ROM RAM A10 WR RAM
CE2 WR
R/W CE2 R/W CE2 A10
Data Bus
)LJXUH 520DQG5$0,PSOHPHQWDWLRQ
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
0HPRU\6SHHG&RQWURO
6ORZPHPRULHVFDQUHGXFHFRVWVIRUPDQ\DSSOLFDWLRQV7KH:$,7OLQHRQ
WKH&38DOORZVWKH=WRRSHUDWHZLWKDQ\VSHHGPHPRU\0HPRU\DFFHVV
WLPHUHTXLUHPHQWVZKLFKDUHFRYHUHGLQ&KDSWHU$DUHPRVWVHYHUH
GXULQJWKH0F\FOHLQVWUXFWLRQIHWFK$OORWKHUPHPRU\DFFHVVF\FOHV
FRPSOHWHLQDQDGGLWLRQDORQHKDOIFORFNF\FOH+HQFHLWLVVRPHWLPHV
DSSURSULDWHWRDGGRQHZDLWVWDWHWRWKH0F\FOHVRVORZHUPHPRULHVFDQ
EHXVHG)LJXUH LVDQH[DPSOHRIDVLPSOHFLUFXLWWKDWDFFRPSOLVKHVWKLV
REMHFWLYH7KLVFLUFXLWFDQEHFKDQJHGWRDGGDVLQJOHZDLWVWDWHWRDQ\
PHPRU\DFFHVVDVLQGLFDWHGLQ)LJXUH
WAIT
M1
+5V
T1 T2 TW T3 T4
S S CLK
M1
D Q D Q
7474 7474 M1
CLK
C Q C Q
R R
WAIT
+5V +5V
)LJXUH $GGLQJ2QH:DLW6WDWHWRDQ0&\FOH
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
WAIT
+5V 7400
T1 T2 TW
+5V
CLK
S S
MREQ Q
D Q D MREQ
7474 7474
CLK
C Q Q WAIT
C
R R
+5V +5V
)LJXUH $GGLQJ2QH:DLW6WDWHWR$Q\0HPRU\&\FOH
,QWHUIDFLQJ'\QDPLF0HPRULHV
(DFKLQGLYLGXDOG\QDPLF5$0KDVLW¶VRZQVSHFLILFDWLRQVWKDWUHTXLUH
PLQRUPRGLILFDWLRQVWRWKHH[DPSOHVJLYHQKHUH=L/2*$SSOLFDWLRQ
1RWHVDUHDYDLODEOHGHVFULELQJKRZWKH=&38LVLQWHUIDFHGZLWKPRVW
SRSXODUG\QDPLF5$0
)LJXUH LOOXVWUDWHVWKHORJLFQHFHVVDU\WRLQWHUIDFH.E\WHVRIG\QDPLF
5$0XVLQJSLQ.G\QDPLFPHPRULHV7KLVORJLFDVVXPHVWKDWWKH
5$0VDUHWKHRQO\PHPRU\LQWKHV\VWHPVRWKDW$LVXVHGWRVHOHFW
EHWZHHQWKHWZRSDJHVRIPHPRU\'XULQJUHIUHVKWLPHDOOPHPRULHVLQWKH
V\VWHPPXVWEHUHDG7KH&38SURYLGHVWKHFRUUHFWUHIUHVKDGGUHVVRQOLQHV
$WKURXJK$:KHQDGGLQJPRUHPHPRU\WRWKHV\VWHPLWLVQHFHVVDU\
WRUHSODFHRQO\WKHWZRJDWHVWKDWRSHUDWHRQ$ZLWKDGHFRGHUWKDWRSHU
DWHVRQDOOUHTXLUHGDGGUHVVELWV$GGUHVVEXIIHUVDQGGDWDEXVEXIIHUVDUH
JHQHUDOO\UHTXLUHGIRUODUJHUV\VWHPV
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
RFSH
MREQ
A12
A11–A0 CE
4K x 8 RAM Array
R/W
Page 1
D7–D0 Data Bus (1000 to 1FFFF)
CE
4K x 8 RAM Array
WR
R/W
Page 0
(0000 to 0FFFF)
)LJXUH ,QWHUIDFLQJ'\QDPLF5$0V
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
62)7:$5(,03/(0(17$7,21(;$03/(6
2YHUYLHZRI6RIWZDUH)HDWXUHV
7KH=LQVWUXFWLRQVHWSURYLGHVWKHXVHUZLWKDODUJHQXPEHURIRSHUDWLRQV
WRFRQWUROWKH=&387KHPDLQDOWHUQDWHDQGLQGH[UHJLVWHUVFDQKROG
DULWKPHWLFDQGORJLFDORSHUDWLRQVIRUPPHPRU\DGGUHVVHVRUDFWDVIDVW
DFFHVVVWRUDJHIRUIUHTXHQWO\XVHGGDWD
,QIRUPDWLRQFDQEHPRYHGGLUHFWO\IURPUHJLVWHUWRUHJLVWHUIURPPHPRU\
WRPHPRU\IURPPHPRU\WRUHJLVWHUVRUIURPUHJLVWHUVWRPHPRU\,QDGGL
WLRQUHJLVWHUFRQWHQWVDQGUHJLVWHUPHPRU\FRQWHQWVFDQEHH[FKDQJHG
ZLWKRXWXVLQJWHPSRUDU\VWRUDJH,QSDUWLFXODUWKHFRQWHQWVRIPDLQDQG
DOWHUQDWHUHJLVWHUVFDQEHFRPSOHWHO\H[FKDQJHGE\H[HFXWLQJRQO\WZR
LQVWUXFWLRQVEXDQGEXX7KLVUHJLVWHUH[FKDQJHSURFHGXUHFDQEHXVHGWR
VHSDUDWHWKHVHWRIZRUNLQJUHJLVWHUVIURPGLIIHUHQWORJLFDOSURFHGXUHVRUWR
H[SDQGWKHVHWRIDYDLODEOHUHJLVWHUVLQDVLQJOHSURFHGXUH
6WRUDJHDQGUHWULHYDORIGDWDEHWZHHQSDLUVRIUHJLVWHUVDQGPHPRU\FDQEH
FRQWUROOHGRQDODVWLQILUVWRXWEDVLVWKURXJKPUSHDQGPOPLQVWUXFWLRQV
WKDWXWLOL]HDVSHFLDOSTACK POINTERUHJLVWHU637KLVVWDFNUHJLVWHULV
DYDLODEOHERWKWRPDQLSXODWHGDWDDQGWRDXWRPDWLFDOO\VWRUHDQGUHWULHYH
DGGUHVVHVIRUVXEURXWLQHOLQNDJH:KHQDVXEURXWLQHLVFDOOHGIRUH[DPSOH
WKHDGGUHVVIROORZLQJWKHCALLLQVWUXFWLRQLVSODFHGRQWKHWRSRIWKHSXVK
GRZQVWDFNSRLQWHGWRE\SP:KHQDVXEURXWLQHUHWXUQVWRWKHFDOOLQJ
URXWLQHWKHDGGUHVVRQWKHWRSRIWKHVWDFNLVXVHGWRVHWWKHSURJUDP
FRXQWHUIRUWKHDGGUHVVRIWKHQH[WLQVWUXFWLRQ7KHVWDFNSRLQWHULVDGMXVWHG
DXWRPDWLFDOO\WRUHIOHFWWKHFXUUHQWWRSVWDFNSRVLWLRQGXULQJPUSHPOP
CALLDQGRETLQVWUXFWLRQV7KLVVWDFNPHFKDQLVPDOORZVSXVKGRZQGDWD
VWDFNVDQGVXEURXWLQHFDOOVWREHQHVWHGWRDQ\SUDFWLFDOGHSWKEHFDXVHWKH
VWDFNDUHDFDQSRWHQWLDOO\EHDVODUJHDVPHPRU\VSDFH
7KHVHTXHQFHRILQVWUXFWLRQH[HFXWLRQFDQEHFRQWUROOHGE\VL[GLIIHUHQW
IODJVFDUU\]HURVLJQSDULW\RYHUIORZDGGVXEWUDFWKDOIFDUU\ZKLFK
UHIOHFWWKHUHVXOWVRIDULWKPHWLFORJLFDOVKLIWDQGFRPSDUHLQVWUXFWLRQV
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
$IWHUWKHH[HFXWLRQRIDQLQVWUXFWLRQWKDWVHWVDIODJWKDWIODJFDQEHXVHGWR
FRQWURODFRQGLWLRQDOMXPSRUUHWXUQLQVWUXFWLRQ7KHVHLQVWUXFWLRQVSURYLGH
ORJLFDOFRQWUROIROORZLQJWKHPDQLSXODWLRQRIVLQJOHELWELWE\WHRUELW
GDWDTXDQWLWLHV
$IXOOVHWRIORJLFDORSHUDWLRQVLQFOXGLQJANDORXORH[FOXVLYHOR
CPLNORDQGNEGWZR¶VFRPSOHPHQWDUHDYDLODEOHIRU%RROHDQRSHUD
WLRQVEHWZHHQWKHDFFXPXODWRUDQGDOORWKHUELWUHJLVWHUVPHPRU\ORFD
WLRQVRULPPHGLDWHRSHUDQGV
,QDGGLWLRQDIXOOVHWRIDULWKPHWLFDQGORJLFDOVKLIWVLQERWKGLUHFWLRQVDUH
DYDLODEOHZKLFKRSHUDWHRQWKHFRQWHQWVRIDOOELWSULPDU\UHJLVWHUVRU
GLUHFWO\RQDQ\PHPRU\ORFDWLRQ7KHFDUU\IODJFDQEHLQFOXGHGRUVHWE\
WKHVHVKLIWLQVWUXFWLRQVWRSURYLGHERWKWKHWHVWLQJRIVKLIWUHVXOWVDQGWROLQN
UHJLVWHUUHJLVWHURUUHJLVWHUPHPRU\VKLIWRSHUDWLRQV
([DPSOHVRI6SHFLILF=,QVWUXFWLRQV
([DPSOH2QH
:KHQDE\WHGDWDVWULQJLQPHPRU\ORFDWLRQ'$7$PXVWEHPRYHGWR
ORFDWLRQ%8))(5WKHRSHUDWLRQLVSURJUDPPHGDVIROORZV
LD HL, DATA ;START ADDRESS OF DATA STRING
LD DE, BUFFER;START ADDRESS OF TARGET BUFFER
LD BC, 737 ;LENGTH OF DATA STRING
LDIR ;MOVE STRING - TRANSFER MEMORY POINTED
;TO BY HL INTO MEMORY LOCATION POINTED
;TO BY DE INCREMENT HL AND DE,
;DECREMENT BC PROCESS UNTIL BC = 0.
(OHYHQE\WHVDUHUHTXLUHGIRUWKLVRSHUDWLRQDQGHDFKE\WHRIGDWDLVPRYHG
LQFORFNF\FOHV
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
([DPSOH7ZR
$VWULQJLQPHPRU\OLPLWHGWRDPD[LPXPOHQJWKRIFKDUDFWHUV
VWDUWLQJDWORFDWLRQ'$7$LVWREHPRYHGWRDQRWKHUPHPRU\ORFDWLRQ
VWDUWLQJDWORFDWLRQ%8))(5XQWLODQ$6&,,XVHGDVDVWULQJGHOLPLWRU
LVIRXQG7KLVRSHUDWLRQLVSHUIRUPHGDVIROORZV
LD HL, DATA ;STARTING ADDRESS OF DATA STRING
LD DE, BUFFER;STARTING ADDRESS OF TARGET BUFFER
LD BC, 132 ;MAXIMUM STRING LENGTH
LD A, ’$’ ;STRING DELIMITER CODE
LOOP:CP (HL) ;COMPARE MEMORY CONTENTS WITH
;DELIMITER
JR Z, END-$ ;GO TO END IF CHARACTERS EQUAL
LDI ;MOVE CHARACTER (HL) to (DE)
;INCREMENT HL AND DE, DECREMENT BC
JP PE, LOOP ;GO TO "LOOP" IF MORE CHARACTERS
END: ;OTHERWISE, FALL THROUGH
;NOTE: P/V FLAG IS USED
;TO INDICATE THAT REGISTER BC WAS
;DECREMENTED TO ZERO.
1LQHWHHQE\WHVDUHUHTXLUHGIRUWKLVRSHUDWLRQ
([DPSOH7KUHH
$GLJLWGHFLPDOQXPEHULVVKLIWHGDVGHSLFWHGLQWKH)LJXUH 7KLV
VKLIWLVSHUIRUPHGWRPHFKDQL]H%&'PXOWLSOLFDWLRQRUGLYLVLRQ7KH
GLJLWGHFLPDOQXPEHULVUHSUHVHQWHGLQSDFNHG%&'IRUPDWWZR%&'
GLJLWVE\WH7KHRSHUDWLRQLVSURJUDPPHGDVIROORZV
LD HL, DATA;ADDRESS OF FIRST BYTE
LD B, COUNT;SHIFT COUNT
XOR A ;CLEAR ACCUMULATOR
ROTAT:RLD ;ROTATE LEFT LOW ORDER DIGIT IN ACC
;WITH DIGITS IN (HL)
INC HL ;ADVANCE MEMORY POINTER.
DJNZ ROTAT-$ ;DECREMENT B AND GO TO ROTAT IF
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
)LJXUH 6KLIWLQJRI%&''LJLWV%\WHV
([DPSOH)RXU
2QHQXPEHULVWREHVXEWUDFWHGIURPDQRWKHUQXPEHUERWKRIZKLFKDUHLQ
SDFNHG%&'IRUPDWDQGDUHRIHTXDOEXWYDU\LQJOHQJWK7KHUHVXOWLVVWRUHG
LQWKHORFDWLRQRIWKHPLQXHQG7KHRSHUDWLRQLVSURJUDPPHGDVIROORZV
LD HL, ARG1 ;ADDRESS OF MINUEND
LD DE, ARG2 ;ADDRESS OF SUBTRAHEND
LD B, LENGTH ;LENGTH OF TWO ARGUMENTS
AND A ;CLEAR CARRY FLAG
SUBDEC:LD A, (DE) ;SUBTRAHEND TO ACC
SBC A, (HL) ;SUBTRACT (HL) FROM ACC
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
([DPSOHVRI3URJUDPPLQJ7DVNV
$VGHSLFWHGLQ7DEOH WKLVH[DPSOHSURJUDPVRUWVDQDUUD\RIQXPEHUVWR
DVFHQGLQJRUGHUXVLQJDVWDQGDUGH[FKDQJHVRUWLQJDOJRULWKP7KHVH
QXPEHUVUDQJHIURPWR
7DEOH%XEEOH/LVWLQJ
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
7DEOH%XEEOH/LVWLQJ&RQWLQXHG
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
7DEOH%XEEOH/LVWLQJ&RQWLQXHG
7DEOH0XOWLSO\/LVWLQJ
2EM
/RF &RGH 6WPW 6RXUFH6WDWHPHQW
0000 1 mult:; unsigned sixteen bit integer multiply.
2 ; on entrance: multiplier in de.
3 ; multiplicand in hl.
4 ;
5 ; on exit result in hl.
6 ;
7 ; register uses:
8 ;
9 ;
10 ; h high order partial result
11 ; l low order partial result
12 ; d high order multiplicand
13 ; e low order multiplicand
14 ; b counter for number of shifts
15 ; c high order bits of multiplier
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
7DEOH0XOWLSO\/LVWLQJ&RQWLQXHG
2EM
/RF &RGH 6WPW 6RXUFH6WDWHPHQW
16 ; a low order bits of multiplier
17 ;
0000 0610 18 ld b, 16; number of bits-initialize
0002 4a 19 ld c, d; move multiplier
0003 7b 20 ld a, e;
0004 eb 21 ex de, hl; move multiplicand
0005 210000 22 ld hl, 0; clear partial result
0008 cb39 23 mloop: srl c; shift multiplier right
000a if 24 rra least significant bit is
25 ; in carry.
000b 3001 26 jr nc, noadd-$; if no carry, skip the add.
good 19 27 add hl, de; else add multiplicand to
28 ; partial result.
000e eb 29 noadd: ex de, h l; shift multiplicand left
goof 29 30 add hl, hl; by multiplying it by two.
0010 eb 31 ex de, hl;
0011 10f5 32 djnz mloop-$; repeat until no more bits.
0013 c9 33 ret;
34 end;
80 +DUGZDUHDQG6RIWZDUH,PSOHPHQWDWLRQ([DPSOHV
<%27
7UGT U/CPWCN
=&38,QVWUXFWLRQ'HVFULSWLRQ
2YHUYLHZ
7KH=&38FDQH[HFXWHGLIIHUHQWLQVWUXFWLRQW\SHVLQFOXGLQJDOO
RIWKH$&387KHLQVWUXFWLRQVIDOOLQWRWKHVHPDMRUJURXSV
• Load and Exchange
• Block Transfer and Search
• Arithmetic and Logical
• Rotate and Shift
• Bit Manipulation (Set, Reset, Test)
• Jump, Call, and Return
• Input/Output
• Basic CPU Control
,QVWUXFWLRQ7\SHV
7KHORDGLQVWUXFWLRQVPRYHGDWDLQWHUQDOO\DPRQJ&38UHJLVWHUVRU
EHWZHHQ&38UHJLVWHUVDQGH[WHUQDOPHPRU\$OOWKHVHLQVWUXFWLRQV
VSHFLI\DVRXUFHORFDWLRQIURPZKLFKWKHGDWDLVWREHPRYHGDQGD
GHVWLQDWLRQORFDWLRQ7KHVRXUFHORFDWLRQLVQRWDOWHUHGE\DORDG
LQVWUXFWLRQ([DPSOHVRIORDGJURXSLQVWUXFWLRQVLQFOXGHPRYHVEHWZHHQ
DQ\RIWKHJHQHUDOSXUSRVHUHJLVWHUVVXFKDVPRYHWKHGDWDWRUHJLVWHU%
IURPUHJLVWHU&7KLVJURXSDOVRLQFOXGHVORDGLPPHGLDWHWRDQ\&38
UHJLVWHURUWRDQ\H[WHUQDOPHPRU\ORFDWLRQ2WKHUW\SHVRIORDG
LQVWUXFWLRQVDOORZWUDQVIHUEHWZHHQ&38UHJLVWHUVDQGPHPRU\ORFDWLRQV
7KHH[FKDQJHLQVWUXFWLRQVFDQWUDGHWKHFRQWHQWVRIWZRUHJLVWHUV
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
$XQLTXHVHWRIEORFNWUDQVIHULQVWUXFWLRQVLVSURYLGHGLQWKH=:LWKD
VLQJOHLQVWUXFWLRQDEORFNRIPHPRU\RIDQ\VL]HFDQEHPRYHGWRDQ\
RWKHUORFDWLRQLQPHPRU\7KLVVHWRIEORFNPRYHVLVH[WUHPHO\YDOXDEOH
ZKHQSURFHVVLQJODUJHVWULQJVRIGDWD:LWKDVLQJOHLQVWUXFWLRQDEORFNRI
H[WHUQDOPHPRU\RIDQ\GHVLUHGOHQJWKFDQEHVHDUFKHGIRUDQ\ELW
FKDUDFWHU:KHQWKHFKDUDFWHULVIRXQGRUWKHHQGRIWKHEORFNLVUHDFKHG
WKHLQVWUXFWLRQDXWRPDWLFDOO\WHUPLQDWHV%RWKWKHEORFNWUDQVIHUDQGWKH
EORFNVHDUFKLQVWUXFWLRQVFDQEHLQWHUUXSWHGGXULQJWKHLUH[HFXWLRQVRWKH\
GRQRWRFFXS\WKH&38IRUORQJSHULRGVRIWLPH
7KHDULWKPHWLFDQGORJLFDOLQVWUXFWLRQVRSHUDWHRQGDWDVWRUHGLQWKH
DFFXPXODWRUDQGRWKHUJHQHUDOSXUSRVH&38UHJLVWHUVRUH[WHUQDOPHPRU\
ORFDWLRQV7KHUHVXOWVRIWKHRSHUDWLRQVDUHSODFHGLQWKHDFFXPXODWRUDQG
WKHDSSURSULDWHIODJVDUHVHWDFFRUGLQJWRWKHUHVXOWRIWKHRSHUDWLRQ
$QH[DPSOHRIDQDULWKPHWLFRSHUDWLRQLVDGGLQJWKHDFFXPXODWRUWRWKH
FRQWHQWVRIDQH[WHUQDOPHPRU\ORFDWLRQ7KHUHVXOWVRIWKHDGGLWLRQDUH
SODFHGLQWKHDFFXPXODWRU7KLVJURXSDOVRLQFOXGHVELWDGGLWLRQDQG
VXEWUDFWLRQEHWZHHQELW&38UHJLVWHUV
7KHURWDWHDQGVKLIWJURXSDOORZVDQ\UHJLVWHURUDQ\PHPRU\ORFDWLRQWR
EHURWDWHGULJKWRUOHIWZLWKRUZLWKRXWFDUU\HLWKHUDULWKPHWLFRUORJLFDO
$OVRDGLJLWLQWKHDFFXPXODWRUFDQEHURWDWHGULJKWRUOHIWZLWKWZRGLJLWV
LQDQ\PHPRU\ORFDWLRQ
7KHELWPDQLSXODWLRQLQVWUXFWLRQVDOORZDQ\ELWLQWKHDFFXPXODWRUDQ\
JHQHUDOSXUSRVHUHJLVWHURUDQ\H[WHUQDOPHPRU\ORFDWLRQWREHVHWUHVHW
RUWHVWHGZLWKDVLQJOHLQVWUXFWLRQ)RUH[DPSOHWKHPRVWVLJQLILFDQWELWRI
UHJLVWHU+FDQEHUHVHW7KLVJURXSLVHVSHFLDOO\XVHIXOLQFRQWURO
DSSOLFDWLRQVDQGIRUFRQWUROOLQJVRIWZDUHIODJVLQJHQHUDOSXUSRVH
SURJUDPPLQJ
7KHJUMPCALLDQGRETURNLQVWUXFWLRQVDUHXVHGWRWUDQVIHUEHWZHHQ
YDULRXVORFDWLRQVLQWKHXVHU¶VSURJUDP7KLVJURXSXVHVVHYHUDOGLIIHUHQW
WHFKQLTXHVIRUREWDLQLQJWKHQHZSURJUDPFRXQWHUDGGUHVVIURPVSHFLILF
H[WHUQDOPHPRU\ORFDWLRQV$XQLTXHW\SHRIFDOOLVWKHRESTART
LQVWUXFWLRQ7KLVLQVWUXFWLRQDFWXDOO\FRQWDLQVWKHQHZDGGUHVVDVDSDUWRI
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
WKHELW2S&RGH7KLVLVSRVVLEOHEHFDXVHRQO\HLJKWVHSDUDWHDGGUHVVHV
ORFDWHGLQSDJH]HURRIWKHH[WHUQDOPHPRU\PD\EHVSHFLILHG3URJUDP
MXPSVPD\DOVREHDFKLHYHGE\ORDGLQJUHJLVWHU+/,;RU,<GLUHFWO\
LQWRWKH3&WKXVDOORZLQJWKHMXPSDGGUHVVWREHDFRPSOH[IXQFWLRQRI
WKHURXWLQHEHLQJH[HFXWHG
7KHLQSXWRXWSXWJURXSRILQVWUXFWLRQVLQWKH=DOORZIRUDZLGHUDQJH
RIWUDQVIHUVEHWZHHQH[WHUQDOPHPRU\ORFDWLRQVRUWKHJHQHUDOSXUSRVH
&38UHJLVWHUVDQGWKHH[WHUQDO,2GHYLFHV,QHDFKFDVHWKHSRUWQXPEHU
LVSURYLGHGRQWKHORZHUHLJKWELWVRIWKHDGGUHVVEXVGXULQJDQ\,2
WUDQVDFWLRQ2QHLQVWUXFWLRQDOORZVWKLVSRUWQXPEHUWREHVSHFLILHGE\WKH
VHFRQGE\WHRIWKHLQVWUXFWLRQZKLOHRWKHU=LQVWUXFWLRQVDOORZLWWREH
VSHFLILHGDVWKHFRQWHQWRIWKH&UHJLVWHU2QHPDMRUDGYDQWDJHRIXVLQJ
WKH&UHJLVWHUDVDSRLQWHUWRWKH,2GHYLFHLVWKDWLWDOORZVPXOWLSOH,2
SRUWVWRVKDUHFRPPRQVRIWZDUHGULYHUURXWLQHV7KLVDGYDQWDJHLVQRW
SRVVLEOHZKHQWKHDGGUHVVLVSDUWRIWKH2S&RGHLIWKHURXWLQHVDUHVWRUHG
LQ520$QRWKHUIHDWXUHRIWKHVHLQSXWLQVWUXFWLRQVLVWKHDXWRPDWLF
VHWWLQJRIWKHIODJUHJLVWHUPDNLQJDGGLWLRQDORSHUDWLRQVXQQHFHVVDU\WR
GHWHUPLQHWKHVWDWHRIWKHLQSXWGDWD7KHSDULW\VWDWHLVRQHH[DPSOH
7KH=&38LQFOXGHVVLQJOHLQVWUXFWLRQVWKDWFDQPRYHEORFNVRIGDWD
XSWRE\WHVDXWRPDWLFDOO\WRRUIURPDQ\,2SRUWGLUHFWO\WRDQ\
PHPRU\ORFDWLRQ,QFRQMXQFWLRQZLWKWKHGXDOVHWRIJHQHUDOSXUSRVH
UHJLVWHUVWKHVHLQVWUXFWLRQVSURYLGHIDVW,2EORFNWUDQVIHUUDWHV7KH
SRZHURIWKLV,2LQVWUXFWLRQVHWLVGHPRQVWUDWHGE\WKH=&38
SURYLGLQJDOOUHTXLUHGIORSS\GLVNIRUPDWWLQJRQGRXEOHGHQVLW\IORSS\
GLVNGULYHVRQDQLQWHUUXSWGULYHQEDVLV)RUH[DPSOHWKH&38SURYLGHV
WKHSUHDPEOHDGGUHVVGDWDDQGHQDEOHVWKH&5&FRGHV
)LQDOO\WKHEDVLF&38FRQWUROLQVWUXFWLRQVDOORZYDULRXVRSWLRQVDQG
PRGHV7KLVJURXSLQFOXGHVLQVWUXFWLRQVVXFKDVVHWWLQJRUUHVHWWLQJWKH
LQWHUUXSWHQDEOHIOLSIORSRUVHWWLQJWKHPRGHRILQWHUUXSWUHVSRQVH
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
$GGUHVVLQJ0RGHV
0RVWRIWKH=LQVWUXFWLRQVRSHUDWHRQGDWDVWRUHGLQLQWHUQDO&38
UHJLVWHUVH[WHUQDOPHPRU\RULQWKH,2SRUWV$GGUHVVLQJUHIHUVWRKRZ
WKHDGGUHVVRIWKLVGDWDLVJHQHUDWHGLQHDFKLQVWUXFWLRQ7KLVVHFWLRQLVD
EULHIVXPPDU\RIWKHW\SHVRIDGGUHVVLQJXVHGLQWKH=ZKLOH
VXEVHTXHQWVHFWLRQVGHWDLOWKHW\SHRIDGGUHVVLQJDYDLODEOHIRUHDFK
LQVWUXFWLRQJURXS
,PPHGLDWH
,QWKLVPRGHRIDGGUHVVLQJWKHE\WHIROORZLQJWKH2S&RGHLQPHPRU\
FRQWDLQVWKHDFWXDORSHUDQG
Op Code
D7 D0
([DPSOHVRIWKLVW\SHRILQVWUXFWLRQLVORDGLQJWKHDFFXPXODWRUZLWKD
FRQVWDQWZKHUHWKHFRQVWDQWLVWKHE\WHLPPHGLDWHO\IROORZLQJWKH2S
&RGH
,PPHGLDWH([WHQGHG
7KLVPRGHLVDQH[WHQVLRQRILPPHGLDWHDGGUHVVLQJLQWKDWWKHWZRE\WHV
IROORZLQJWKH2S&RGHVDUHWKHRSHUDQG
([DPSOHVRIWKLVW\SHRILQVWUXFWLRQLVORDGLQJWKH+/UHJLVWHUSDLUELW
UHJLVWHUZLWKELWVWZRE\WHVRIGDWD
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
0RGLILHG3DJH=HUR$GGUHVVLQJ
7KH=KDVDVSHFLDOVLQJOHE\WHCALLLQVWUXFWLRQWRDQ\RIHLJKW
ORFDWLRQVLQSDJH]HURRIPHPRU\7KLVLQVWUXFWLRQZKLFKLVUHIHUUHGWRDV
DUHVWDUWVHWVWKH3&WRDQHIIHFWLYHDGGUHVVLQSDJH]HUR7KHYDOXHRIWKLV
LQVWUXFWLRQLVWKDWLWDOORZVDVLQJOHE\WHWRVSHFLI\DFRPSOHWHELW
DGGUHVVZKHUHFRPPRQO\FDOOHGVXEURXWLQHVDUHORFDWHGWKXVVDYLQJ
PHPRU\VSDFH
B7 B0 Effective Address is
(B5 B4 B3 000)2
5HODWLYH$GGUHVVLQJ
5HODWLYHDGGUHVVLQJXVHVRQHE\WHRIGDWDIROORZLQJWKH2S&RGHWR
VSHFLI\DGLVSODFHPHQWIURPWKHH[LVWLQJSURJUDPWRZKLFKDSURJUDP
MXPSFDQRFFXU7KLVGLVSODFHPHQWLVDVLJQHGWZR¶VFRPSOHPHQWQXPEHU
WKDWLVDGGHGWRWKHDGGUHVVRIWKH2S&RGHRIWKHIROORZLQJLQVWUXFWLRQ
7KHYDOXHRIUHODWLYHDGGUHVVLQJLVWKDWLWDOORZVMXPSVWRQHDUE\ORFDWLRQV
ZKLOHRQO\UHTXLULQJWZRE\WHVRIPHPRU\VSDFH)RUPRVWSURJUDPV
UHODWLYHMXPSVDUHE\IDUWKHPRVWSUHYDOHQWW\SHRIMXPSGXHWRWKH
SUR[LPLW\RIUHODWHGSURJUDPVHJPHQWV7KXVWKHVHLQVWUXFWLRQVFDQ
6LJQLILFDQWO\UHGXFHPHPRU\VSDFHUHTXLUHPHQWV7KHVLJQHG
GLVSODFHPHQWFDQUDQJHEHWZHHQDQGIURP$7KLVDOORZV
IRUDWRWDOGLVSODFHPHQWRIWRIURPWKHMXPSUHODWLYH2S&RGH
DGGUHVV$QRWKHUPDMRUDGYDQWDJHLVWKDWLWDOORZVIRUUHORFDWDEOHFRGH
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
([WHQGHG$GGUHVVLQJ
([WHQGHG$GGUHVVLQJSURYLGHVIRUWZRE\WHVELWVRIDGGUHVVWREH
LQFOXGHGLQWKHLQVWUXFWLRQ7KLVGDWDFDQEHDQDGGUHVVWRZKLFKD
SURJUDPFDQMXPSRULWFDQEHDQDGGUHVVZKHUHDQRSHUDQGLVORFDWHG
One or
Op Code Two Bytes
Low Order Address to Low Order Operand
([WHQGHGDGGUHVVLQJLVUHTXLUHGIRUDSURJUDPWRMXPSIURPDQ\ORFDWLRQ
LQPHPRU\WRDQ\RWKHUORFDWLRQRUORDGDQGVWRUHGDWDLQDQ\PHPRU\
ORFDWLRQ
'XULQJH[WHQGHGDGGUHVVLQJXVHVSHFLI\WKHVRXUFHRUGHVWLQDWLRQDGGUHVV
RIDQRSHUDQG7KLVQRWDWLRQnnLVXVHGWRLQGLFDWHWKHFRQWHQWRI
PHPRU\DWnnZKHUHnnLVWKHELWDGGUHVVVSHFLILHGLQWKHLQVWUXFWLRQ
7KHWZRE\WHVRIDGGUHVVnnDUHXVHGDVDSRLQWHUWRDPHPRU\ORFDWLRQ
7KHXVHRIWKHSDUHQWKHVHVDOZD\VPHDQVWKDWWKHYDOXHHQFORVHGZLWKLQ
WKHPLVXVHGDVDSRLQWHUWRDPHPRU\ORFDWLRQ)RUH[DPSOH
UHIHUVWRWKHFRQWHQWVRIPHPRU\DWORFDWLRQ
,QGH[HG$GGUHVVLQJ
,QWKLVW\SHRIDGGUHVVLQJWKHE\WHRIGDWDIROORZLQJWKH2S&RGH
FRQWDLQVDGLVSODFHPHQWWKDWLVDGGHGWRRQHRIWKHWZRLQGH[UHJLVWHUVWKH
2S&RGHVSHFLILHVZKLFKLQGH[UHJLVWHULVXVHGWRIRUPDSRLQWHUWR
PHPRU\7KHFRQWHQWVRIWKHLQGH[UHJLVWHUDUHQRWDOWHUHGE\WKLV
RSHUDWLRQ
Op Code
Two Byte Op Code
Op Code
$QH[DPSOHRIDQLQGH[HGLQVWUXFWLRQLVWRORDGWKHFRQWHQWVRIWKH
PHPRU\ORFDWLRQ,QGH[5HJLVWHU'LVSODFHPHQWLQWRWKHDFFXPXODWRU
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7KHGLVSODFHPHQWLVDVLJQHGWZR¶VFRPSOHPHQWQXPEHU,QGH[HG
DGGUHVVLQJJUHDWO\VLPSOLILHVSURJUDPVXVLQJWDEOHVRIGDWDEHFDXVHWKH
LQGH[UHJLVWHUFDQSRLQWWRWKHVWDUWRIDQ\WDEOH7ZRLQGH[UHJLVWHUVDUH
SURYLGHGEHFDXVHYHU\RIWHQRSHUDWLRQVUHTXLUHWZRRUPRUHWDEOHV
,QGH[HGDGGUHVVLQJDOVRDOORZVIRUUHORFDWDEOHFRGH
7KHWZRLQGH[UHJLVWHUVLQWKH=DUHUHIHUUHGWRDV,;DQG,<7R
LQGLFDWHLQGH[HGDGGUHVVLQJWKHQRWDWLRQXVH
(IX+d) or (IY+d)
+HUHGLVWKHGLVSODFHPHQWVSHFLILHGDIWHUWKH2S&RGH7KHSDUHQWKHVHV
LQGLFDWHWKDWWKLVYDOXHLVXVHGDVDSRLQWHUWRH[WHUQDOPHPRU\
5HJLVWHU$GGUHVVLQJ
0DQ\RIWKH=2S&RGHVFRQWDLQELWVRILQIRUPDWLRQWKDWVSHFLI\ZKLFK
&38UHJLVWHULVWREHXVHGIRUDQRSHUDWLRQ$QH[DPSOHRIUHJLVWHU
DGGUHVVLQJLVWRORDGWKHGDWDLQUHJLVWHULQWRUHJLVWHU&
,PSOLHG$GGUHVVLQJ
,PSOLHGDGGUHVVLQJUHIHUVWRRSHUDWLRQVZKHUHWKH2S&RGHDXWRPDWLFDOO\
LPSOLHVRQHRUPRUH&38UHJLVWHUVDVFRQWDLQLQJWKHRSHUDQGV$Q
H[DPSOHLVWKHVHWRIDULWKPHWLFRSHUDWLRQVZKHUHWKHDFFXPXODWRULV
DOZD\VLPSOLHGWREHWKHGHVWLQDWLRQRIWKHUHVXOWV
5HJLVWHU,QGLUHFW$GGUHVVLQJ
7KLVW\SHRIDGGUHVVLQJVSHFLILHVDELW&38UHJLVWHUSDLUVXFKDV+/
WREHXVHGDVDSRLQWHUWRDQ\ORFDWLRQLQPHPRU\7KLVW\SHRILQVWUXFWLRQ
LVYHU\SRZHUIXODQGLWLVXVHGLQDZLGHUDQJHRIDSSOLFDWLRQV
$QH[DPSOHRIWKLVW\SHRILQVWUXFWLRQLVWRORDGWKHDFFXPXODWRUZLWKWKH
GDWDLQWKHPHPRU\ORFDWLRQSRLQWHGWRE\WKH+/UHJLVWHUFRQWHQWV
,QGH[HGDGGUHVVLQJLVDFWXDOO\DIRUPRIUHJLVWHULQGLUHFWDGGUHVVLQJ
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
H[FHSWWKDWDGLVSODFHPHQWLVDGGHGZLWKLQGH[HGDGGUHVVLQJ5HJLVWHU
LQGLUHFWDGGUHVVLQJDOORZVIRUYHU\SRZHUIXOEXWVLPSOHWRLPSOHPHQW
PHPRU\DFFHVVHV7KHEORFNPRYHDQGVHDUFKFRPPDQGVLQWKH=DUH
H[WHQVLRQVRIWKLVW\SHRIDGGUHVVLQJZKHUHDXWRPDWLFUHJLVWHU
LQFUHPHQWLQJGHFUHPHQWLQJDQGFRPSDULQJKDVEHHQDGGHG7KHQRWDWLRQ
IRULQGLFDWLQJUHJLVWHULQGLUHFWDGGUHVVLQJLVWRSXWSDUHQWKHVHVDURXQGWKH
QDPHRIWKHUHJLVWHUWKDWLVWREHXVHGDVWKHSRLQWHU)RUH[DPSOHWKH
V\PERO(HL) VSHFLILHVWKDWWKHFRQWHQWVRIWKHHLUHJLVWHUDUHWREHXVHG
DVDSRLQWHUWRDPHPRU\ORFDWLRQ2IWHQUHJLVWHULQGLUHFWDGGUHVVLQJLV
XVHGWRVSHFLI\ELWRSHUDQGV,QWKLVFDVHWKHUHJLVWHUFRQWHQWVSRLQWWR
WKHORZHURUGHUSRUWLRQRIWKHRSHUDQGZKLOHWKHUHJLVWHUFRQWHQWVDUH
DXWRPDWLFDOO\LQFUHPHQWHGWRREWDLQWKHXSSHUSRUWLRQRIWKHRSHUDQG
%LW$GGUHVVLQJ
7KH=FRQWDLQVDODUJHQXPEHURIELWVHWUHVHWDQGWHVWLQVWUXFWLRQV
7KHVHLQVWUXFWLRQVDOORZDQ\PHPRU\ORFDWLRQRU&38UHJLVWHUWREH
VSHFLILHGIRUDELWRSHUDWLRQWKURXJKRQHRIWKUHHSUHYLRXVDGGUHVVLQJ
PRGHVUHJLVWHUUHJLVWHULQGLUHFWDQGLQGH[HGZKLOHWKUHHELWVLQWKH2S
&RGHVSHFLI\ZKLFKRIWKHHLJKWELWVLVWREHPDQLSXODWHG
$GGUHVVLQJ0RGH&RPELQDWLRQV
0DQ\LQVWUXFWLRQVLQFOXGHPRUHWKDQRQHRSHUDQGVXFKDVDULWKPHWLF
LQVWUXFWLRQVRUORDGV,QWKHVHFDVHVWZRW\SHVRIDGGUHVVLQJPD\EH
HPSOR\HG)RUH[DPSOHORDGFDQXVHLPPHGLDWHDGGUHVVLQJWRVSHFLI\WKH
VRXUFHDQGUHJLVWHULQGLUHFWRULQGH[HGDGGUHVVLQJWRVSHFLI\WKH
GHVWLQDWLRQ
,QVWUXFWLRQ2S&RGHV
7KLVVHFWLRQGHVFULEHVHDFKRIWKH=LQVWUXFWLRQVDQGSURYLGHVWDEOHV
OLVWLQJWKH2S&RGHVIRUHYHU\LQVWUXFWLRQ,QHDFKRIWKHVHWDEOHVWKH2S
&RGHVLQVKDGHGDUHDVDUHLGHQWLFDOWRWKRVHRIIHUHGLQWKH$&38
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
$OVRGHSLFWHGLVWKHDVVHPEO\ODQJXDJHPQHPRQLFWKDWLVXVHGIRUHDFK
LQVWUXFWLRQ$OOLQVWUXFWLRQ2S&RGHVDUHOLVWHGLQKH[DGHFLPDOQRWDWLRQ
6LQJOHE\WH2S&RGHVUHTXLUHWZRKH[FKDUDFWHUVZKLOHGRXEOHE\WH2S
&RGHVUHTXLUHIRXUKH[FKDUDFWHUV)RUFRQYHQLHQFHWKHFRQYHUVLRQIURP
KH[WRELQDU\LVUHSHDWHGLQ7DEOH
7DEOH+H[%LQDU\'HFLPDO&RQYHUVLRQ7DEOH
7KH=LQVWUXFWLRQPQHPRQLFVFRQVLVWRIDQ2S&RGHDQG]HURRQHRU
WZRRSHUDQGV,QVWUXFWLRQVZKHUHWKHRSHUDQGLVLPSOLHGFRQWDLQVQR
RSHUDQG,QVWUXFWLRQVWKDWFRQWDLQRQO\RQHORJLFDORSHUDQGZKHUHRQH
RSHUDQGLVLQYDULDQWVXFKDVWKHLogicalORLQVWUXFWLRQDUH
UHSUHVHQWHGE\DRQHRSHUDQGPQHPRQLF,QVWUXFWLRQVWKDWFRQWDLQWZR
YDU\LQJRSHUDQGVDUHUHSUHVHQWHGE\WZRRSHUDQGPQHPRQLFV
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
/RDGDQG([FKDQJH
7DEOH GHILQHVWKH2S&RGHIRUDOOWKHELWORDGLQVWUXFWLRQV
LPSOHPHQWHGLQWKH=&38$OVRGHVFULEHGLQWKLVWDEOHLVWKHW\SHRI
DGGUHVVLQJXVHGIRUHDFKLQVWUXFWLRQ7KHVRXUFHRIWKHGDWDLVIRXQGRQ
WKHWRSKRUL]RQWDOURZDQGWKHGHVWLQDWLRQLVVSHFLILHGLQWKHOHIWFROXPQ
)RUH[DPSOHORDGUHJLVWHU&IURPUHJLVWHU%XVHVWKH2S&RGH48H,QDOO
WKHILJXUHVWKH2S&RGHLVVSHFLILHGLQKH[DGHFLPDOQRWDWLRQDQGWKH48H
0100 1000ELQDU\FRGHLVIHWFKHGE\WKH&38IURPWKHH[WHUQDO
PHPRU\GXULQJ0WLPHGHFRGHGDQGWKHQWKHUHJLVWHUWUDQVIHULV
DXWRPDWLFDOO\SHUIRUPHGE\WKH&38
7KHDVVHPEO\ODQJXDJHPQHPRQLFIRUWKLVHQWLUHJURXSLV/'IROORZHG
E\WKHGHVWLQDWLRQIROORZHGE\WKHVRXUFH/''(676285&(1RWH
WKDWVHYHUDOFRPELQDWLRQVRIDGGUHVVLQJPRGHVDUHSRVVLEOH)RUH[DPSOH
WKHVRXUFHPD\XVHUHJLVWHUDGGUHVVLQJDQGWKHGHVWLQDWLRQPD\EHUHJLVWHU
LQGLUHFWVXFKDVORDGWKHPHPRU\ORFDWLRQSRLQWHGWRE\UHJLVWHU+/ZLWK
WKHFRQWHQWVRIUHJLVWHU'7KH2S&RGHIRUWKLVRSHUDWLRQLV727KH
PQHPRQLFIRUWKLVORDGLQVWUXFWLRQLV LDHLD
7KHSDUHQWKHVHVDURXQGWKH+/LQGLFDWHVWKDWWKHFRQWHQWVRI+/DUHXVHG
DVDSRLQWHUWRDPHPRU\ORFDWLRQ,QDOO=ORDGLQVWUXFWLRQPQHPRQLFV
WKHGHVWLQDWLRQLVDOZD\VOLVWHGILUVWZLWKWKHVRXUFHIROORZLQJ7KH=
DVVHPEO\ODQJXDJHLVGHILQHGIRUHDVHRISURJUDPPLQJ(YHU\LQVWUXFWLRQ
LVVHOIGRFXPHQWLQJDQGSURJUDPVZULWWHQLQ=ODQJXDJHDUHHDV\WR
PDLQWDLQ
,Q7DEOH VRPH2S&RGHVWKDWDUHDYDLODEOHLQWKH=XVHWZRE\WHV
7KLVIHDWXUHLVDQHIILFLHQWPHWKRGRIPHPRU\XWLOL]DWLRQEHFDXVH
RUELWLQVWUXFWLRQVDUHLPSOHPHQWHGLQWKH=2IWHQXWLOL]HG
LQVWUXFWLRQVVXFKDVDULWKPHWLFRUORJLFDORSHUDWLRQVDUHRQO\HLJKWELWV
ZKLFKUHVXOWVLQEHWWHUPHPRU\XWLOL]DWLRQWKDQLVDFKLHYHGZLWKIL[HG
LQVWUXFWLRQVL]HVVXFKDVELWV
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%LW/RDG*URXS/'
6RXUFH
57 ) ( ( $ (
G G QQ Q
'
G G Q
( ( '(
G G Q
%
G G Q
( ( (
G G Q
%
G G Q
( (
G G Q
Indirect
'
(BC)
(DE)
INDEXED (IX+d) '' '' '' '' '' '' '' ''
G G G G G G G G
G G G G G G G G
EXT, (nn)
ADDR Q
IMPLIED I ('
R ('
)
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
$OOORDGLQVWUXFWLRQVXVLQJLQGH[HGDGGUHVVLQJIRUHLWKHUWKHVRXUFHRU
GHVWLQDWLRQORFDWLRQDFWXDOO\XVHWKUHHE\WHVRIPHPRU\ZLWKWKHWKLUGE\WH
EHLQJWKHGLVSODFHPHQWG)RUH[DPSOHDORDGUHJLVWHU(ZLWKWKHRSHUDQG
SRLQWHGWRE\,;ZLWKDQRIIVHWRILVZULWWHQ
LID E, (IX + 8)
7KHLQVWUXFWLRQVHTXHQFHIRUWKLVLQPHPRU\LV
Address A DD
Op Code
A+1 5E
A+2 08 Displacement
Operand
7KHWZRH[WHQGHGDGGUHVVLQJLQVWUXFWLRQVDUHDOVRWKUHHE\WHLQVWUXFWLRQV
)RUH[DPSOHWKHLQVWUXFWLRQWRORDGWKHDFFXPXODWRUZLWKWKHRSHUDQGLQ
PHPRU\ORFDWLRQ)+LVZULWWHQ
LID A, (6F 32H)
DQGLWVLQVWUXFWLRQVHTXHQFHLV
Address A 3A Op Code
1RWLFHWKDWWKHORZRUGHUSRUWLRQRIWKHDGGUHVVLVDOZD\VWKHILUVW
RSHUDQG
7KHORDGLPPHGLDWHLQVWUXFWLRQVIRUWKHJHQHUDOSXUSRVHELWUHJLVWHUV
DUHWZRE\WHLQVWUXFWLRQV7KHLQVWUXFWLRQORDGUHJLVWHU+ZLWKWKHYDOXH
+LVZULWWHQ
LD H, 36H
DQGLWVVHTXHQFHLV
Address A 26 Op Code
A+1 36 Operand
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
/RDGLQJDPHPRU\ORFDWLRQXVLQJLQGH[HGDGGUHVVLQJIRUWKHGHVWLQDWLRQ
DQGLPPHGLDWHDGGUHVVLQJIRUWKHVRXUFHUHTXLUHVIRXUE\WHV)RUH[DPSOH
LD (IX - 15), 21H
DSSHDUVDV
Address A DD
Op Code
A+1 36
1RWLFHWKDWZLWKDQ\LQGH[HGDGGUHVVLQJWKHGLVSODFHPHQWDOZD\VIROORZV
GLUHFWO\DIWHUWKH2S&RGH
7DEOH VSHFLILHVWKHELWORDGRSHUDWLRQV7KHH[WHQGHGDGGUHVVLQJ
IHDWXUHFRYHUVDOOUHJLVWHUSDLUV5HJLVWHULQGLUHFWRSHUDWLRQVVSHFLI\LQJ
WKHVWDFNSRLQWHUDUHWKHPUSHDQGPOPLQVWUXFWLRQV7KHPQHPRQLFIRU
WKHVHLQVWUXFWLRQVLVPUSHDQGPOP7KHVHGLIIHUIURPRWKHUELWORDGVLQ
WKDWWKHVWDFNSRLQWHULVDXWRPDWLFDOO\GHFUHPHQWHGDQGLQFUHPHQWHGDV
HDFKE\WHLVSXVKHGRQWRRUSRSSHGIURPWKHVWDFNUHVSHFWLYHO\)RU
H[DPSOHWKHLQVWUXFWLRQ PUSH AF LVDVLQJOHE\WHLQVWUXFWLRQZLWKWKH
2S&RGHRIF5H'XULQJH[HFXWLRQWKLVVHTXHQFHLVJHQHUDWHG
Decrement SP
LD (SP), A
Decrement SP
LD (SP), F
7KHH[WHUQDOVWDFNQRZDSSHDUVDV
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
(SP+1) A
• •
• •
7KHPOPLQVWUXFWLRQLVWKHH[DFWUHYHUVHRIDPUSH$OOPUSHDQGPOP
LQVWUXFWLRQVXWLOL]HDELWRSHUDQGDQGWKHKLJKRUGHUE\WHLVDOZD\V
SXVKHGILUVWDQGSRSSHGODVW
PUSH BC is PUSH 8 then C
PUSH DE is PUSH D then E
PUSH HL is PUSH H then L
POP HL is POP L then H
7KHLQVWUXFWLRQXVLQJH[WHQGHGLPPHGLDWHDGGUHVVLQJIRUWKHVRXUFH
UHTXLUHVWZRE\WHVRIGDWDIROORZLQJWKH2S&RGH)RUH[DPSOH
LD DE, 0659H
DSSHDUVDV
Address A E6 Op Code
A+1 07 Operand
,QDOOH[WHQGHGLPPHGLDWHRUH[WHQGHGDGGUHVVLQJPRGHVWKHORZRUGHU
E\WHDOZD\VDSSHDUVILUVWDIWHUWKH2S&RGH
7DEOH OLVWVWKHELWH[FKDQJHLQVWUXFWLRQVLPSOHPHQWHGLQWKH=2S
&RGH08HDOORZVWKHSURJUDPPHUWRVZLWFKEHWZHHQWKHWZRSDLUVRI
DFFXPXODWRUIODJUHJLVWHUVZKLOHD9HDOORZVWKHSURJUDPPHUWRVZLWFK
EHWZHHQWKHGXSOLFDWHVHWRIVL[JHQHUDOSXUSRVHUHJLVWHUV7KHVH2S
&RGHVDUHRQO\RQHE\WHLQOHQJWKWRPLQLPL]HWKHWLPHQHFHVVDU\WR
SHUIRUPWKHH[FKDQJHVRWKDWWKHGXSOLFDWHEDQNVFDQEHXVHGWRPDNH
YHU\IDVWLQWHUUXSWUHVSRQVHWLPHV
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%LW/RDG*URXS/'386+DQG323
Source
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH([FKDQJHV(;DQG(;;
,PSOLHG$GGUHVVLQJ
$)
%&
'(
DQG+/
+/ ,; ,<
IMPLIED AF 08
BC
DE D9
HL
DE EB
REG. (SP) E3 DD FD
IND. E3 E3
%ORFN7UDQVIHUDQG6HDUFK
7DEOH OLVWVWKHH[WUHPHO\SRZHUIXOEORFNWUDQVIHULQVWUXFWLRQV$OOWKHVH
LQVWUXFWLRQVRSHUDWHZLWKWKUHHUHJLVWHUV
HL points to the source location
DE points to the destination location
BC is a byte counter
$IWHUWKHSURJUDPPHUKDVLQLWLDOL]HGWKHVHWKUHHUHJLVWHUVDQ\RIWKHVH
IRXULQVWUXFWLRQVPD\EHXVHG7KHLDI/RDGDQG,QFUHPHQWLQVWUXFWLRQ
PRYHVRQHE\WHIURPWKHORFDWLRQSRLQWHGWRE\+/WRWKHORFDWLRQSRLQWHG
WRE\'(5HJLVWHUSDLUV+/DQG'(DUHWKHQDXWRPDWLFDOO\LQFUHPHQWHG
DQGDUHUHDG\WRSRLQWWRWKHIROORZLQJORFDWLRQV7KHE\WHFRXQWHU
UHJLVWHUSDLU%&LVDOVRGHFUHPHQWHGDWWKLVWLPH7KLVLQVWUXFWLRQLV
YDOXDEOHZKHQEORFNVRIGDWDPXVWEHPRYHGEXWRWKHUW\SHVRI
SURFHVVLQJDUHUHTXLUHGEHWZHHQHDFKPRYH7KHLDIR/RDG,QFUHPHQW
DQG5HSHDWLQVWUXFWLRQLVDQH[WHQVLRQRIWKHLDILQVWUXFWLRQ7KHVDPH
ORDGDQGLQFUHPHQWRSHUDWLRQLVUHSHDWHGXQWLOWKHE\WHFRXQWHUUHDFKHVWKH
FRXQWRI]HUR7KXVWKLVVLQJOHLQVWUXFWLRQFDQPRYHDQ\EORFNRIGDWD
IURPRQHORFDWLRQWRDQ\RWKHU
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
%HFDXVHELWUHJLVWHUVDUHXVHGWKHVL]HRIWKHEORFNFDQEHXSWR
.E\WHV. ORQJDQGFDQEHPRYHGIURPDQ\ORFDWLRQLQPHPRU\
WRDQ\RWKHUORFDWLRQ)XUWKHUPRUHWKHEORFNVFDQEHRYHUODSSLQJEHFDXVH
WKHUHDUHQRFRQVWUDLQWVRQWKHGDWDXVHGLQWKHWKUHHUHJLVWHUSDLUV
7KHLDDDQGLDDRLQVWUXFWLRQVDUHYHU\VLPLODUWRWKHLDIDQGLDIR7KH
RQO\GLIIHUHQFHLVWKDWUHJLVWHUSDLUV+/DQG'(DUHGHFUHPHQWHGDIWHU
HYHU\PRYHVRWKDWDEORFNWUDQVIHUVWDUWVIURPWKHKLJKHVWDGGUHVVRIWKH
GHVLJQDWHGEORFNUDWKHUWKDQWKHORZHVW
7DEOH VSHFLILHVWKH2S&RGHVIRUWKHIRXUEORFNVHDUFKLQVWUXFWLRQV7KH
ILUVWCPI&RPSDUHDQG,QFUHPHQWFRPSDUHVWKHGDWDLQWKHDFFXPXODWRU
ZLWKWKHFRQWHQWVRIWKHPHPRU\ORFDWLRQSRLQWHGWRE\UHJLVWHU+/7KH
UHVXOWRIWKHFRPSDUHLVVWRUHGLQRQHRIWKHIODJELWVDQGWKH+/UHJLVWHU
SDLULVWKHQLQFUHPHQWHGDQGWKHE\WHFRXQWHUUHJLVWHUSDLU%&LV
GHFUHPHQWHG
7KHLQVWUXFWLRQCPIRLVPHUHO\DQH[WHQVLRQRIWKHCPlLQVWUXFWLRQLQ
ZKLFKWKHFRPSDUHLVUHSHDWHGXQWLOHLWKHUDPDWFKLVIRXQGRUWKHE\WH
FRXQWHUUHJLVWHUSDLU%&EHFRPHV]HUR7KXVWKLVVLQJOHLQVWUXFWLRQFDQ
VHDUFKWKHHQWLUHPHPRU\IRUDQ\ELWFKDUDFWHU
7KHCPD&RPSDUHDQG'HFUHPHQWDQGCPDR&RPSDUH'HFUHPHQWDQG
5HSHDWDUHVLPLODULQVWUXFWLRQVWKHLURQO\GLIIHUHQFHLVWKDWWKH\
GHFUHPHQW+/DIWHUHYHU\FRPSDUHVRWKDWWKH\VHDUFKWKHPHPRU\LQWKH
RSSRVLWHGLUHFWLRQ7KHVHDUFKLVVWDUWHGDWWKHKLJKHVWORFDWLRQLQWKH
PHPRU\EORFN
7KHVHEORFNWUDQVIHUDQGFRPSDUHLQVWUXFWLRQVDUHH[WUHPHO\SRZHUIXOLQ
VWULQJPDQLSXODWLRQDSSOLFDWLRQV
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%ORFN7UDQVIHU*URXS
'HVWLQDWLRQ 6RXUFH
Reg. Indir. (DE) Reg. Indir.
(HL)
(ED) LDI - Load (DE) (HL)
A0 Inc HL and DE, Dec BC
(ED) LDIR, - Load (DE) (HL)
B0 Inc HL and DE, Dec BC, Repeat until BC = 0
(ED) LDD - Load (DE) (HL)
A8 Inc HL and DE, Dec BC
(ED) LDDR - Load (DE) (HL)
B8 Dec HL and DE, Dec BC, Repeat until BC = 0
Note:
Reg HL points to source
Reg DE points to destination
Reg BC is byte counter
7DEOH%ORFN6HDUFK*URXS
6HDUFK
/RFDWLRQ
Reg. Indir.
(HL)
(ED) CPI
A1 Inc HL, Dec BC
(ED) CPRI. Inc HL, Dec BC
B1 Repeat until) BC = 0 or find match
(ED) WD Dec HL and BC
A9
(ED) CPDR Dec HL and BC
B9 Repeat until BC = 0 or find match
Note: HL points to location in memory to be compared with accumulator contents
BC Is byte counter
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
$ULWKPHWLFDQG/RJLFDO
7DEOH OLVWVDOOWKHELWDULWKPHWLFRSHUDWLRQVWKDWFDQEHSHUIRUPHGZLWK
WKHDFFXPXODWRUDOVROLVWHGDUHWKHLQFUHPHQWINCDQGGHFUHPHQWDEC
LQVWUXFWLRQV,QDOOWKHVHLQVWUXFWLRQVH[FHSWINCDQGDECWKHVSHFLILHG
ELWRSHUDWLRQLVSHUIRUPHGEHWZHHQWKHGDWDLQWKHDFFXPXODWRUDQGWKH
VRXUFHGDWD7KHUHVXOWRIWKHRSHUDWLRQLVSODFHGLQWKHDFFXPXODWRUZLWK
WKHH[FHSWLRQRIFRPSDUHCPWKDWOHDYHVWKHDFFXPXODWRUXQFKDQJHG$OO
WKHVHRSHUDWLRQVHIIHFWWKHIODJUHJLVWHUDVDUHVXOWRIWKHVSHFLILHG
RSHUDWLRQINCDQGDECLQVWUXFWLRQVVSHFLI\DUHJLVWHURUDPHPRU\
ORFDWLRQDVERWKVRXUFHDQGGHVWLQDWLRQRIWKHUHVXOW:KHQWKHVRXUFH
RSHUDQGLVDGGUHVVHGXVLQJWKHLQGH[UHJLVWHUVWKHGLVSODFHPHQWPXVW
IROORZGLUHFWO\:LWKLPPHGLDWHDGGUHVVLQJWKHDFWXDORSHUDQGIROORZV
GLUHFWO\)RUH[DPSOHWKHLQVWUXFWLRQ AND07H LV
Address A E6 Op Code
A+1 07 Operand
$VVXPLQJWKDWWKHDFFXPXODWRUFRQWDLQHGWKHYDOXH)+WKHUHVXOWRI03H
LVSODFHGLQWKHDFFXPXODWRU
$FFXPXODWRUEHIRUHRSHUDWLRQ1111 0011 F3H
2SHUDQG 0000 0111 07H
5HVXOWWR$FFXPXODWRU0000 0011 03H
7KH$GGLQVWUXFWLRQADDSHUIRUPVDELQDU\DGGEHWZHHQWKHGDWDLQWKH
VRXUFHORFDWLRQDQGWKHGDWDLQWKHDFFXPXODWRU7KH6XEWUDFWSUB
SHUIRUPVDELQDU\VXEWUDFWLRQ:KHQWKH$GGZLWK&DUU\LVVSHFLILHG
ADCRUWKH6XEWUDFWZLWK&DUU\SBCWKHQWKH&DUU\IODJLVDOVRDGGHG
RUVXEWUDFWHGUHVSHFWLYHO\7KHIODJVDQGGHFLPDODGMXVWLQVWUXFWLRQDAA
LQWKH=DOORZDULWKPHWLFRSHUDWLRQVIRU
• Multiprecision packed BCD numbers
• Multiprecision signed or unsigned binary numbers
• Multiprecision two’s complement signed numbers
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%LW$ULWKPHWLFDQG/RJLF
6RXUFH
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%LW$ULWKPHWLFDQG/RJLF
6RXUFH
XOR AF A8 A9 AA AB AC AD AE DD FD EE
AE AE n
d d
OR B7 B0 B1 B2 B3 B4 B5 B6 DD FD F6
B6 B6 n
d d
COMPARE BF B8 B9 BA BB BC BD BE DD FD FE
CP BE BE n
d d
INCREMENT 3C 04 0C 14 1C 24 2C 34 DD FD
INC 34 34
d d
DECREMENT 3D 05 0D 15 1D 25 2D 35 DD FD
DEC 35 35
d d
7DEOH*HQHUDO3XUSRVH$)2SHUDWLRQ
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%LW$ULWKPHWLF
6RXUFH
BC DE HL SP IX IY
Destination HL 09 19 29 39
ADD IX DD DD DD DD
09 19 39 29
IY FD FD FD FD
09 19 39 29
ADD with carry and set HL ED ED ED ED
flags ADC 4A 5A 6A 7A
SUB with carry and set HL ED ED ED ED
flags SBC 42 52 62 72
Increment INC 03 13 23 33 DD FD
23 23
Decrement DEC DB 1B 2B 3B DD FD
2B 2B
5RWDWHDQG6KLIW
$PDMRUIHDWXUHRIWKH=LVWRURWDWHRUVKLIWGDWDLQWKHDFFXPXODWRUDQ\
JHQHUDOSXUSRVHUHJLVWHURUDQ\PHPRU\ORFDWLRQ$OOWKHURWDWHDQGVKLIW
2S&RGHVDUHGHSLFWHGLQ)LJXUH $OVRLQFOXGHGLQWKH=DUH
DULWKPHWLFDQGORJLFDOVKLIWRSHUDWLRQV7KHVHRSHUDWLRQVDUHXVHIXOLQD
ZLGHUDQJHRIDSSOLFDWLRQVLQFOXGLQJLQWHJHUPXOWLSOLFDWLRQDQGGLYLVLRQ
7ZR%&'GLJLWURWDWHLQVWUXFWLRQVRRDDQGRLDDOORZDGLJLWLQWKH
DFFXPXODWRUWREHURWDWHGZLWKWKHWZRGLJLWVLQDPHPRU\ORFDWLRQ
SRLQWHGWRE\UHJLVWHUSDLU+/6HH)LJXUH 7KHVHLQVWUXFWLRQVDOORZ
IRUHIILFLHQW%&'DULWKPHWLF
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH5RWDWHVDQG6KLIWV
6RXUFH
%LW0DQLSXODWLRQ
7KHDELOLW\WRVHWUHVHWDQGWHVWLQGLYLGXDOELWVLQDUHJLVWHURUPHPRU\
ORFDWLRQLVQHHGHGLQDOPRVWHYHU\SURJUDP7KHVHELWVPD\EHIODJVLQD
JHQHUDOSXUSRVHVRIWZDUHURXWLQHLQGLFDWLRQVRIH[WHUQDOFRQWURO
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
FRQGLWLRQVRUGDWDSDFNHGLQWRPHPRU\ORFDWLRQVPDNLQJPHPRU\
XWLOL]DWLRQPRUHHIILFLHQW
7KH=FDQVHWUHVHWRUWHVWDQ\ELWLQWKHDFFXPXODWRUDQ\JHQHUDO
SXUSRVHUHJLVWHURUDQ\PHPRU\ORFDWLRQZLWKDVLQJOHLQVWUXFWLRQ
7DEOH OLVWVWKHLQVWUXFWLRQVWKDWDUHDYDLODEOHIRUWKLVSXUSRVH
5HJLVWHUDGGUHVVLQJFDQVSHFLI\WKHDFFXPXODWRURUDQ\JHQHUDOSXUSRVH
UHJLVWHURQZKLFKWKHRSHUDWLRQLVWREHSHUIRUPHG5HJLVWHULQGLUHFWDQG
LQGH[HGDGGUHVVLQJDUHDYDLODEOHWRRSHUDWHRQH[WHUQDOPHPRU\ORFDWLRQV
%LWWHVWRSHUDWLRQVVHWWKH=HURIODJ=LIWKHWHVWHGELWLVD]HUR
-XPS&DOODQG5HWXUQ
7DEOH OLVWVDOOWKHMXPSFDOODQGUHWXUQLQVWUXFWLRQVLPSOHPHQWHGLQWKH
=&38$MXPSLVDEUDQFKLQDSURJUDPZKHUHWKHSURJUDPFRXQWHULV
ORDGHGZLWKWKHELWYDOXHDVVSHFLILHGE\RQHRIWKHWKUHHDYDLODEOH
DGGUHVVLQJPRGHV,PPHGLDWH([WHQGHG5HODWLYHRU5HJLVWHU,QGLUHFW
1RWLFHWKDWWKHMXPSJURXSKDVVHYHUDOFRQGLWLRQVWKDWFDQEHVSHFLILHG
EHIRUHWKHMXPSLVPDGH,IWKHVHFRQGLWLRQVDUHQRWPHWWKHSURJUDP
PHUHO\FRQWLQXHVZLWKWKHQH[WVHTXHQWLDOLQVWUXFWLRQ7KHFRQGLWLRQVDUH
DOOGHSHQGHQWRQWKHGDWDLQWKHIODJUHJLVWHU7KHLPPHGLDWHH[WHQGHG
DGGUHVVLQJLVXVHGWRMXPSWRDQ\ORFDWLRQLQWKHPHPRU\7KLVLQVWUXFWLRQ
UHTXLUHVWKUHHE\WHVWZRWRVSHFLI\WKHELWDGGUHVVZLWKWKHORZRUGHU
DGGUHVVE\WHILUVWIROORZHGE\WKHKLJKRUGHUDGGUHVVE\WH
)RUH[DPSOHDQXQFRQGLWLRQDOMXPSWRPHPRU\ORFDWLRQ3E32HLV
Address A C3 Op Code
7KHUHODWLYHMXPSLQVWUXFWLRQXVHVRQO\WZRE\WHVWKHVHFRQGE\WHLVD
VLJQHGWZR¶VFRPSOHPHQWGLVSODFHPHQWIURPWKHH[LVWLQJ3&7KLV
GLVSODFHPHQWFDQEHLQWKHUDQJHRIWRDQGLVPHDVXUHGIURP
WKHDGGUHVVRIWKHLQVWUXFWLRQ2S&RGH
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7KUHHW\SHVRIUHJLVWHULQGLUHFWMXPSVDUHDOVRLQFOXGHG7KHVH
LQVWUXFWLRQVDUHLPSOHPHQWHGE\ORDGLQJWKHUHJLVWHUSDLU+/RURQHRIWKH
LQGH[UHJLVWHUV;RU,<GLUHFWO\LQWRWKH3&7KLVIHDWXUHDOORZVIRU
SURJUDPMXPSVWREHDIXQFWLRQRISUHYLRXVFDOFXODWLRQV
$FDOOLVDVSHFLDOIRUPRIDMXPSZKHUHWKHDGGUHVVRIWKHE\WHIROORZLQJ
WKHFDOOLQVWUXFWLRQLVSXVKHGRQWRWKHVWDFNEHIRUHWKHMXPSLVPDGH$
UHWXUQLQVWUXFWLRQLVWKHUHYHUVHRIDFDOOEHFDXVHWKHGDWDRQWKHWRSRIWKH
VWDFNLVSRSSHGGLUHFWO\LQWRWKH3&WRIRUPDMXPSDGGUHVV7KHFDOODQG
UHWXUQLQVWUXFWLRQVDOORZIRUVLPSOHVXEURXWLQHDQGLQWHUUXSWKDQGOLQJ
7ZRVSHFLDOUHWXUQLQVWUXFWLRQDUHLQFOXGHGLQWKH=IDPLO\RI
FRPSRQHQWV7KHUHWXUQIURPLQWHUUXSWLQVWUXFWLRQRETIDQGWKHUHWXUQ
IURPQRQPDVNDEOHLQWHUUXSWRETNDUHWUHDWHGLQWKH&38DVDQ
XQFRQGLWLRQDOUHWXUQLGHQWLFDOWRWKH2S&RGHC9H7KHGLIIHUHQFHLVWKDW
RETIFDQEHXVHGDWWKHHQGRIDQLQWHUUXSWURXWLQHDQGDOO=
SHULSKHUDOFKLSVUHFRJQL]HWKHH[HFXWLRQRIWKLVLQVWUXFWLRQIRUSURSHU
FRQWURORIQHVWHGSULRULW\LQWHUUXSWKDQGOLQJ7KLVLQVWUXFWLRQFRXSOHG
ZLWKWKH=SHULSKHUDOGHYLFHVLPSOHPHQWDWLRQVLPSOLILHVWKHQRUPDO
UHWXUQIURPQHVWHGLQWHUUXSW:LWKRXWWKLVIHDWXUHWKHIROORZLQJVRIWZDUH
VHTXHQFHLVQHFHVVDU\WRLQIRUPWKHLQWHUUXSWLQJGHYLFHWKDWWKHLQWHUUXSW
URXWLQHLVFRPSOHWHG
Disable Interrupt Prevent interrupt before routine is exited.
LD A, n Notify peripheral that service
OUT n, A routine is complete.
Enable Interrupt
Return
7KLVVHYHQE\WHVHTXHQFHFDQEHUHSODFHGZLWKWKHRQHE\WHEILQVWUXFWLRQ
DQGWKHWZRE\WHRETILQVWUXFWLRQLQWKH=7KLVLVLPSRUWDQWEHFDXVH
LQWHUUXSWVHUYLFHWLPHRIWHQPXVWEHPLQLPL]HG
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%LW0DQLSXODWLRQ*URXS
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%LW0DQLSXODWLRQ*URXS&RQWLQXHG
Rest DD FD
Bit
0 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
RES
87 80 81 82 83 84 85 86 d d
86 86
DD FD
1 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
8F 88 89 8A 88 8C 8D 8E d d
8E 8E
DD FD
2 C8 C8 CS C8 C8 C8 C8 C8 C8 C8
97 90 91 92 93 94 95 96 d d
96 96
DD FD
3 C8 C8 C8 C8 CS C8 C8 C8 C8 C8
9F 98 99 9A 98 90 90 9E d d
9E 9E
DD FD
4 C8 C8 C8 C8 C6 C8 C8 C8 C8 C8
A7 AO AI A2 A3 A4 A5 A6 d d
A6 A6
DD FD
5 C8 C8 C8 C8 08 C8 C8 C8 C8 C8
AF A8 A9 AA AB AC AD AE d d
AE AE
DD FD
6 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
B7 B0 B1 82 B3 B4 B5 B6 d d
B6 B6
DD DD
7 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
BF B8 89 8A B8 8C BD 9E d d
BE BE
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%LW0DQLSXODWLRQ*URXS&RQWLQXHG
Set DD FD
Bit
0 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
SET
C7 C0 C1 C2 C3 C4 C5 C6 d d
C6 C6
DD FD
1 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
CF C8 C9 CA C8 CC CD CE d d
CE CE
DD FD
2 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
D7 DO D1 D2 D3 D4 DS D6 d d
D6 D6
DD FD
3 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
DF D8 09 DA DS DC DD DE d d
DE DE
DD FD
4 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
E7 E0 E1 E2 E3 E4 E5 E6 d d
E6 E6
DD FD
5 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
EF E8 E9 EA EB EC ED EE d d
EE EE
DD FD
6 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
F7 FO F1 F2 F3 F4 FS F6 d d
F6 F6
DD FD
7 C8 C8 C8 C8 C8 C8 C8 C8 C8 C8
FF F8 F9 FA FB FC FD FE d d
FE FE
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH-XPS&DOODQG5HWXUQ*URXS
&RQGLWLRQ
Un- Carry Non Zero Non Parity Parity Sign Sign Reg
Cond. Carry Zero Even Odd Neg Pos B0
JUMP JP IMMED. nn C3 D8 D2 CA C2 EA E2 FA F2
EXT. n n n n n n n n n
n n n n n n n n n
JUMP JR RELATIVE PC+e 18 38 30 28 20
e-2 e-2 e-2 e-2 e-2
JUMP JP Register (HL) EB
INDIR.
(IX) DD
E9
(IY) FD
E9
CALL IMMED. nn CD DC D4 CC C4 EC E4 FC F4
EXT. n n n n n n n n n
n n n n n n n n n
Decrement B, Jump RELATIVE PC+e 10
If Non Zero DJNZ e-2
Return RE REGISTER (SP) C9 D8 D0 C8 C0 E8 E0 F8 F0
INDIR. (SP+1)
Return From ED
INT RETI 4D
Return From ED
Non Maskable 45
INT RETN
7KHLQVWUXFWLRQDJNZLVXVHGWRIDFLOLWDWHSURJUDPORRSFRQWURO7KLVWZR
E\WHUHODWLYHMXPSLQVWUXFWLRQGHFUHPHQWVWKH%UHJLVWHUDQGWKHMXPS
RFFXUVLIWKH%UHJLVWHUKDVQRWEHHQGHFUHPHQWHGWR]HUR7KHUHODWLYH
GLVSODFHPHQWLVH[SUHVVHGDVDVLJQHGWZR¶VFRPSOHPHQWQXPEHU$
VLPSOHH[DPSOHRILWVXVHLV
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH OLVWVWKHHLJKW2S&RGHVIRUWKHUHVWDUWLQVWUXFWLRQ7KLV
LQVWUXFWLRQLVDVLQJOHE\WHFDOOWRDQ\RIWKHHLJKWDGGUHVVHVOLVWHG7KH
VLPSOHPQHPRQLFIRUWKHVHHLJKWFDOOVLVDOVROLVWHG7KLVLQVWUXFWLRQLV
XVHIXOIRUIUHTXHQWO\XVHGURXWLQHVEHFDXVHPHPRU\FRQVXPSWLRQLV
PLQLPL]HG
7DEOH5HVWDUW*URXS
2S
&RGH
CALL 0000H C7 RST 0
Address 0008H CF RST 8
0010H D7 RST 16
0018H DF RST 24
0020H E7 RST 32
0028H EF RST 40
0030H F7 RST 48
0038H FF RST 56
,QSXW2XWSXW
7KH=KDVDQH[WHQVLYHVHWRILQSXWDQGRXWSXWLQVWUXFWLRQVDVVKRZQLQ
7DEOH DQG7DEOH 7KHDGGUHVVLQJRIWKHLQSXWRURXWSXWGHYLFHFDQ
EHHLWKHUDEVROXWHRUUHJLVWHULQGLUHFWXVLQJWKH&UHJLVWHU,QWKHUHJLVWHU
LQGLUHFWDGGUHVVLQJPRGHGDWDFDQEHWUDQVIHUUHGEHWZHHQWKH,2GHYLFHV
DQGDQ\RIWKHLQWHUQDOUHJLVWHUV,QDGGLWLRQHLJKWEORFNWUDQVIHU
LQVWUXFWLRQVKDYHEHHQLPSOHPHQWHG7KHVHLQVWUXFWLRQVDUHVLPLODUWRWKH
PHPRU\EORFNWUDQVIHUVH[FHSWWKDWWKH\XVHUHJLVWHUSDLU+/IRUDSRLQWHU
WRWKHPHPRU\VRXUFHRXWSXWFRPPDQGVRUGHVWLQDWLRQLQSXW
FRPPDQGVZKLOHUHJLVWHU%LVXVHGDVDE\WHFRXQWHU5HJLVWHU&KROGV
WKHDGGUHVVRIWKHSRUWIRUZKLFKWKHLQSXWRURXWSXWFRPPDQGLVUHTXLUHG
%HFDXVHUHJLVWHU%LVHLJKWELWVLQOHQJWKWKH,2EORFNWUDQVIHUFRPPDQG
KDQGOHVXSWRE\WHV
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
,QWKHLQVWUXFWLRQVINADQGOUTnAWKH,2GHYLFHDGGUHVVQDSSHDUVLQ
WKHORZHUKDOIRIWKHDGGUHVVEXV$$ZKLOHWKHDFFXPXODWRUFRQWHQW
LVWUDQVIHUUHGLQWKHXSSHUKDOIRIWKHDGGUHVVEXV,QDOOUHJLVWHULQGLUHFW
LQSXWRXWSXWLQVWUXFWLRQVLQFOXGLQJEORFN,2WUDQVIHUVWKHFRQWHQWRI
UHJLVWHU&LVWUDQVIHUUHGWRWKHORZHUKDOIRIWKHDGGUHVVEXVGHYLFH
DGGUHVVZKLOHWKHFRQWHQWRIUHJLVWHU%LVWUDQVIHUUHGWRWKHXSSHUKDOIRI
WKHDGGUHVVEXV
&38&RQWURO*URXS
7DEOH LOOXVWUDWHVWKHVL[JHQHUDOSXUSRVH&38FRQWUROLQVWUXFWLRQV7KH
NOPLVDGRQRWKLQJLQVWUXFWLRQ7KHHALTLQVWUXFWLRQVXVSHQGV&38
RSHUDWLRQXQWLODVXEVHTXHQWLQWHUUXSWLVUHFHLYHGZKLOHWKHDIDQGE1DUH
XVHGWRORFNRXWDQGHQDEOHLQWHUUXSWV7KHWKUHHLQWHUUXSWPRGH
FRPPDQGVVHWWKH&38WRDQ\RIWKHWKUHHDYDLODEOHLQWHUUXSWUHVSRQVH
PRGHVDVIROORZV,I0RGHLVVHWWKHLQWHUUXSWLQJGHYLFHFDQLQVHUWDQ\
LQVWUXFWLRQRQWKHGDWDEXVDQGDOORZWKH&38WRH[HFXWHLW0RGHLVD
VLPSOLILHGPRGHZKHUHWKH&38DXWRPDWLFDOO\H[HFXWHVDUHVWDUWRSTWR
ORFDWLRQ0038HVRWKDWQRH[WHUQDOKDUGZDUHLVUHTXLUHGWKHROG3&
FRQWHQWLVSXVKHGRQWRWKHVWDFN0RGHLVWKHPRVWSRZHUIXOEHFDXVHLW
DOORZVIRUDQLQGLUHFWFDOOWRDQ\ORFDWLRQLQPHPRU\:LWKWKLVPRGHWKH
&38IRUPVDELWPHPRU\DGGUHVVZKHUHWKHXSSHUHLJKWELWVDUHWKH
FRQWHQWRIUHJLVWHU,DQGWKHORZHUHLJKWELWVDUHVXSSOLHGE\WKH
LQWHUUXSWLQJGHYLFH7KLVDGGUHVVSRLQWVWRWKHILUVWRIWZRVHTXHQWLDOE\WHV
LQDWDEOHZKHUHWKHDGGUHVVRIWKHVHUYLFHURXWLQHLVORFDWHG7KH&38
DXWRPDWLFDOO\REWDLQVWKHVWDUWLQJDGGUHVVDQGSHUIRUPVDCALL
LQVWUXFWLRQWRWKLVDGGUHVV
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH,QSXW*URXS
5HJLVWHU
,PPHG ,QGLU
(n) (c)
Input Input IN Register A DB ED
Destination Address n 7B
B ED
40
C ED
48
D ED
50
E ED
58
H ED
60
L ED
68
INI - input & Register (HL) ED Block
inc HL, Dec B Indir A2 Input
INIR - INP, Inc HL, ED Commands
Dec B, repeat IF B0 B2
IND - input & Inc ED
Dec HL, Dec B AA
INDR - input, Dec HL, ED
Dec B, repeat IF B0 BA
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
7DEOH%LW$ULWKPHWLFDQG/RJLF
6RXUFH
Register Register Indir.
A B C D E H L (HL)
11OUT Immed (n) D3
. n
Reg (c) ED ED ED ED ED ED ED
Ind. 79 41 49 51 59 61 69
11OUT - output ED Block
inc HL, dec B A3 Output
11OUT - output ED Command
dec B, repeat if B0 B3
11OUT - output ED
dec HL and B AB
11OUTDR - output, dec ED
HL and B, repeat IF B0 BB
Port
Destination
Address
7DEOH0LVFHOODQHRXV&38&RQWURO
NOP 00
HALT 76
Disable INT (EI) F3
Enable INT (EI) FB
Set INT mode 0 ED 8080A mode
IM0 46
Set INT mode 1 ED Call to location 0038H
IM1 56
Set INT mode 2 ED indirect call using register I and B
IM2 5E bits from INTER device as a pointer
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
80 =&38,QVWUXFWLRQ'HVFULSWLRQ
<%27
7UGT U/CPWCN
=,QVWUXFWLRQ6HW
=$VVHPEO\/DQJXDJH
7KHDVVHPEO\ODQJXDJHDOORZVWKHXVHUWRZULWHDSURJUDPZLWKRXWFRQFHUQ
IRUPHPRU\DGGUHVVHVRUPDFKLQHLQVWUXFWLRQIRUPDWV,WXVHVV\PEROLF
DGGUHVVHVWRLGHQWLI\PHPRU\ORFDWLRQVDQGPQHPRQLFFRGHV2S&RGHV
DQGRSHUDQGVWRUHSUHVHQWWKHLQVWUXFWLRQV/DEHOVV\PEROVDUHDVVLJQHG
WRDSDUWLFXODULQVWUXFWLRQVWHSLQDVRXUFHSURJUDPWRLGHQWLI\WKDWVWHSDV
DQHQWU\SRLQWIRUXVHLQVXEVHTXHQWLQVWUXFWLRQV2SHUDQGVIROORZLQJHDFK
LQVWUXFWLRQUHSUHVHQWVWRUDJHORFDWLRQVUHJLVWHUVRUFRQVWDQWYDOXHV7KH
DVVHPEO\ODQJXDJHDOVRLQFOXGHVDVVHPEOHUGLUHFWLYHVWKDWVXSSOHPHQWWKH
PDFKLQHLQVWUXFWLRQ$SVHXGRRSIRUH[DPSOHLVDVWDWHPHQWWKDWLVQRW
WUDQVODWHGWRDPDFKLQHLQVWUXFWLRQEXWUDWKHULVLQWHUSUHWHGDVDGLUHFWLYH
WKDWFRQWUROVWKHDVVHPEO\SURFHVV
$SURJUDPZULWWHQLQDVVHPEO\ODQJXDJHLVFDOOHGDVRXUFHSURJUDPZKLFK
FRQVLVWVRIV\PEROLFFRPPDQGVFDOOHGVWDWHPHQWV(DFKVWDWHPHQWLV
ZULWWHQRQDVLQJOHOLQHDQGPD\FRQVLVWRIIURPRQHWRIRXUHQWULHV$ODEHO
ILHOGDQRSHUDWLRQILHOGDQRSHUDQGILHOGDQGDFRPPHQWILHOG7KHVRXUFH
SURJUDPLVSURFHVVHGE\WKHDVVHPEOHUWRREWDLQDPDFKLQHODQJXDJH
SURJUDPREMHFWSURJUDPWKDWFDQEHH[HFXWHGGLUHFWO\E\WKH=&38
=L/2*SURYLGHVVHYHUDODVVHPEOHUVWKDWGLIIHULQWKHIHDWXUHVRIIHUHG
%RWKDEVROXWHDQGUHORFDWDEOHDVVHPEOHUVDUHDYDLODEOHZLWKWKH
'HYHORSPHQWDQG0LFURFRPSXWHU6\VWHPV7KHDEVROXWHDVVHPEOHULV
FRQWDLQHGLQEDVHOHYHOVRIWZDUHRSHUDWLQJLQD.PHPRU\VSDFHZKLOH
WKHUHORFDWLQJDVVHPEOHULVSDUWRIWKH5,2HQYLURQPHQWRSHUDWLQJLQD
.PHPRU\VSDFH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
=6WDWXV,QGLFDWRU)ODJV
7KHIODJUHJLVWHUV)DQG)
VXSSO\LQIRUPDWLRQWRWKHXVHUDERXWWKHVWDWXV
RIWKH=DWDQ\JLYHQWLPH7KHELWSRVLWLRQVIRUHDFKIODJLVOLVWHGEHORZ
S Z X N X P/V N C
6\PERO )LHOG1DPH
C Carry Flag
N Add/Subtract
P/V Parity/Overflow Flag
H Half Carry Flag
Z Zero Flag
S Sign Flag
X Not Used
(DFKRIWKHWZRIODJUHJLVWHUVFRQWDLQVELWVRIVWDWXVLQIRUPDWLRQWKDWDUH
VHWRUFOHDUHGE\&38RSHUDWLRQV%LWVDQGDUHQRWXVHG)RXURIWKHVH
ELWV&39=DQG6PD\EHWHVWHGIRUXVHZLWKFRQGLWLRQDOJUMPCALL
RURETURNLQVWUXFWLRQV7ZRIODJVPD\QRWEHWHVWHG+1DQGDUHXVHG
IRU%&'DULWKPHWLF
&DUU\)ODJ
7KH&DUU\)ODJ&LVVHWRUFOHDUHGGHSHQGLQJRQWKHRSHUDWLRQSHUIRUPHG
)RUADDLQVWUXFWLRQVWKDWJHQHUDWHD&DUU\DQGSUBLQVWUXFWLRQVWKDW
JHQHUDWHD%RUURZWKH&DUU\)ODJVHWV7KH&DUU\)ODJLVUHVHWE\DQADD
LQVWUXFWLRQWKDWGRHVQRWJHQHUDWHD&DUU\DQGE\DSUBLQVWUXFWLRQWKDW
GRHVQRWJHQHUDWHD%RUURZ7KLVVDYHG&DUU\IDFLOLWDWHVVRIWZDUHURXWLQHV
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
IRUH[WHQGHGSUHFLVLRQDULWKPHWLF$OVRWKHDAALQVWUXFWLRQVHWVWKH&DUU\
)ODJLIWKHFRQGLWLRQVIRUPDNLQJWKHGHFLPDODGMXVWPHQWDUHPHW
)RULQVWUXFWLRQVRLA RRARLSDQGRRSWKH&DUU\ELWLVXVHGDVDOLQN
EHWZHHQWKHOHDVWVLJQLILFDQWE\WH/6%DQGPRVWVLJQLILFDQWE\WH06%
IRUDQ\UHJLVWHURUPHPRU\ORFDWLRQ'XULQJLQVWUXFWLRQVRLCARLCDQG
SLAWKH&DUU\FRQWDLQVWKHODVWYDOXHVKLIWHGRXWRI%LWRIDQ\UHJLVWHU
RUPHPRU\ORFDWLRQ'XULQJLQVWUXFWLRQVRRCARRCSRADQGSRLWKH
&DUU\FRQWDLQVWKHODVWYDOXHVKLIWHGRXWRI%LW0RIDQ\UHJLVWHURU
PHPRU\ORFDWLRQ
)RUWKHORJLFDOLQVWUXFWLRQVANDORDQGXORWKH&DUU\LVUHVHW
7KH&DUU\)ODJFDQDOVREHVHWE\WKH6HW&DUU\)ODJSCFDQG
FRPSOHPHQWHGE\WKH&RPSOLPHQW&DUU\)ODJCCFLQVWUXFWLRQV
$GG6XEWUDFW)ODJ
7KH$GG6XEWUDFW)ODJ1LVXVHGE\WKHDecimalAdjust
AccumulatorLQVWUXFWLRQ'$$WRGLVWLQJXLVKEHWZHHQADDDQGSUB
LQVWUXFWLRQV)RUADDLQVWUXFWLRQV1LVFOHDUHGWR)RU68%LQVWUXFWLRQV
1LVVHWWR
$GG6XEWUDFW)ODJ
7KHDecimalAdjustAccumulatorLQVWUXFWLRQDAAXVHVWKLVIODJWR
GLVWLQJXLVKEHWZHHQADDDQGSUBTRACTLQVWUXFWLRQV)RUDOOADD
LQVWUXFWLRQV1VHWVWR)RUDOOSUBTRACTLQVWUXFWLRQV1VHWVWR
3DULW\2YHUIORZ)ODJ39
7KLVIODJLVVHWWRDVSHFLILFVWDWHGHSHQGLQJRQWKHRSHUDWLRQSHUIRUPHG
)RUDULWKPHWLFRSHUDWLRQVWKLVIODJLQGLFDWHVDQ2YHUIORZFRQGLWLRQZKHQ
WKHUHVXOWLQWKH$FFXPXODWRULVJUHDWHUWKDQWKHPD[LPXPSRVVLEOHQXPEHU
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
7KHWZRQXPEHUVDGGHGWRJHWKHUUHVXOWHGLQDQXPEHUWKDWH[FHHGV+127
DQGWKHWZRSRVLWLYHRSHUDQGVKDYHUHVXOWHGLQDQHJDWLYHQXPEHU95
ZKLFKLVLQFRUUHFW7KH2YHUIORZ)ODJLVWKHUHIRUHVHW
)RUVXEWUDFWLRQ2YHUIORZFDQRFFXUIRURSHUDQGVRIXQOLNHVLJQV2SHUDQGV
RIOLNHVLJQVQHYHUFDXVH2YHUIORZ)RUH[DPSOH
7KHPLQXHQGVLJQKDVFKDQJHGIURPD3RVLWLYHWRDQHJDWLYHJLYLQJDQ
LQFRUUHFWGLIIHUHQFH2YHUIORZLVVHW
$QRWKHUPHWKRGIRULGHQWLI\LQJDQ2YHUIORZLVWRREVHUYHWKH&DUU\WRDQG
RXWRIWKHVLJQELW,IWKHUHLVD&DUU\LQDQGQR&DUU\RXWRULIWKHUHLVQR
&DUU\LQDQGD&DUU\RXWWKHQ2YHUIORZKDVRFFXUUHG
7KLVIODJLVDOVRXVHGZLWKORJLFDORSHUDWLRQVDQGURWDWHLQVWUXFWLRQVWR
LQGLFDWHWKHUHVXOWLQJSDULW\LV(YHQ7KHQXPEHURI1ELWVLQDE\WHDUH
FRXQWHG,IWKHWRWDOLV2GG2''SDULW\LVIODJJHG3 0,IWKHWRWDOLV
(YHQ(9(1SDULW\LVIODJJHG3 1
'XULQJVHDUFKLQVWUXFWLRQVCPICPIRCPDCPDRDQGEORFNWUDQVIHU
LQVWUXFWLRQVLDILDIRLDDLDDRWKH39)ODJPRQLWRUVWKHVWDWHRIWKH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%\WH&RXQW5HJLVWHUBC:KHQGHFUHPHQWLQJLIWKHE\WHFRXQWHU
GHFUHPHQWVWR0WKHIODJLVFOHDUHGWR0RWKHUZLVHWKHIODJLVVHWWR1
'XULQJLDA,IDQGLDA,RLQVWUXFWLRQVWKH39)ODJLVVHWZLWKWKHYDOXH
RIWKHLQWHUUXSWHQDEOHIOLSIORSIFF2IRUVWRUDJHRUWHVWLQJ
:KHQLQSXWWLQJDE\WHIURPDQ,2GHYLFHZLWKDQIN rCLQVWUXFWLRQ
WKH39)ODJLVDGMXVWHGWRLQGLFDWHWKHGDWDSDULW\
+DOI&DUU\)ODJ
7KH+DOI&DUU\)ODJ+LVVHW1RUFOHDUHG0GHSHQGLQJRQWKH&DUU\
DQG%RUURZVWDWXVEHWZHHQ%LWVDQGRIDQELWDULWKPHWLFRSHUDWLRQ
7KLVIODJLVXVHGE\WKHDecimalAdjustAccumulatorLQVWUXFWLRQ
DAAWRFRUUHFWWKHUHVXOWRIDSDFNHG%&'DGGRUVXEWUDFWRSHUDWLRQ7KH
+)ODJLVVHW1RUFOHDUHG0DFFRUGLQJWRWKHIROORZLQJWDEOH
=HUR)ODJ
7KH=HUR)ODJ=LVVHWRUFOHDUHGLIWKHUHVXOWJHQHUDWHGE\WKH
H[HFXWLRQRIFHUWDLQLQVWUXFWLRQVLV
)RUELWDULWKPHWLFDQGORJLFDORSHUDWLRQVWKH=IODJLVVHWWRD1LIWKH
UHVXOWLQJE\WHLQWKH$FFXPXODWRULV0,IWKHE\WHLVQRW0WKH=IODJLV
UHVHWWR0
)RUFRPSDUH6HDUFKLQVWUXFWLRQVWKH=IODJLVVHWWR1LIWKHYDOXHLQWKH
$FFXPXODWRULVHTXDOWRWKHYDOXHLQWKHPHPRU\ORFDWLRQLQGLFDWHGE\WKH
YDOXHRIWKH5HJLVWHUSDLU+/
:KHQWHVWLQJDELWLQDUHJLVWHURUPHPRU\ORFDWLRQWKH=IODJFRQWDLQVWKH
FRPSOHPHQWHGVWDWHRIWKHLQGLFDWHGELWVHH³%LWEV´
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
:KHQLQSXWWLQJRURXWSXWWLQJDE\WHEHWZHHQDPHPRU\ORFDWLRQDQGDQ,2
GHYLFHINIINDOUTIDQGOUTDLIWKHUHVXOWRIGHFUHPHQWLQJWKHB
5HJLVWHULV0WKH=IODJLV1RWKHUZLVHWKH=IODJLV0$OVRIRUE\WHLQSXWV
IURP,2GHYLFHVXVLQJIN rCWKH=IODJLVVHWWRLQGLFDWHDE\WHLQSXW
6LJQ)ODJ
7KH6LJQ)ODJ6VWRUHVWKHVWDWHRIWKHPRVWVLJQLILFDQWELWRIWKH
$FFXPXODWRUELW:KHQWKH=SHUIRUPVDULWKPHWLFRSHUDWLRQVRQ
VLJQHGQXPEHUVWKHELQDU\WZRVFRPSOHPHQWQRWDWLRQLVXVHGWRUHSUHVHQW
DQGSURFHVVQXPHULFLQIRUPDWLRQ$SRVLWLYHQXPEHULVLGHQWLILHGE\D0LQ
%LW$QHJDWLYHQXPEHULVLGHQWLILHGE\D7KHELQDU\HTXLYDOHQWRIWKH
PDJQLWXGHRIDSRVLWLYHQXPEHULVVWRUHGLQELWVWRIRUDWRWDOUDQJHRI
IURP0WR127$QHJDWLYHQXPEHULVUHSUHVHQWHGE\WKHWZRVFRPSOHPHQW
RIWKHHTXLYDOHQWSRVLWLYHQXPEHU7KHWRWDOUDQJHIRUQHJDWLYHQXPEHUVLV
IURP±1 WR ±128
:KHQLQSXWWLQJDE\WHIURPDQ,2GHYLFHWRDUHJLVWHUXVLQJDQ,1U&
LQVWUXFWLRQWKH6)ODJLQGLFDWHVHLWKHUSRVLWLYH6 RUQHJDWLYH6
GDWD
=,QVWUXFWLRQ'HVFULSWLRQ
([HFXWLRQWLPH(7IRUHDFKLQVWUXFWLRQLVJLYHQLQPLFURVHFRQGVIRUDQ
DVVXPHG0+]FORFN7RWDOPDFKLQHF\FOHV0DUHLQGLFDWHGZLWKWRWDO
FORFNSHULRGV76WDWHV$OVRLQGLFDWHGDUHWKHQXPEHURI76WDWHVIRUHDFK
0F\FOH)RUH[DPSOH
0&\FOHV76WDWHV0+](7
LQGLFDWHVWKDWWKHLQVWUXFWLRQFRQVLVWVRIPDFKLQHF\FOHV7KHILUVWF\FOH
FRQWDLQVFORFNSHULRGV76WDWHV7KHVHFRQGF\FOHFRQWDLQVFORFN
SHULRGVIRUDWRWDORIFORFNSHULRGVRU76WDWHV7KHLQVWUXFWLRQH[HFXWHVLQ
PLFURVHFRQGV
5HJLVWHUIRUPDWLVLQGLFDWHGIRUHDFKLQVWUXFWLRQZLWKWKHPRVWVLJQLILFDQW
ELWWRWKHOHIWDQGWKHOHDVWVLJQLILFDQWELWWRWKHULJKW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%LW/RDG*URXS
/'UU
1RGTCVKQP UU
1R%QFG /'
1RGTCPFU UU
0 1 r r
&GUETKRVKQP 7KHFRQWHQWVRIDQ\UHJLVWHUU
DUHORDGHGWRDQ\RWKHUUHJLVWHUUUU
LGHQWLILHVDQ\RIWKHUHJLVWHUV$%&'(+RU/DVVHPEOHGDVIROORZV
LQWKHREMHFWFRGH
5HJLVWHU U&
A 111
B 000
C 001
D 010
E 011
H 100
L 101
0&\FOHV 76WDWHV 0+](7
1 4 1.0
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH+UHJLVWHUFRQWDLQVWKHQXPEHU8AHDQGWKH(UHJLVWHUFRQWDLQV10H
WKHLQVWUXFWLRQLDHE UHVXOWVLQERWKUHJLVWHUVFRQWDLQLQJ10H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'UQ
1RGTCVKQP UQ
1R%QFG /'
1RGTCPFU UQ
0 0 r 1 1 0
&GUETKRVKQP 7KHELWLQWHJHUQLVORDGHGWRDQ\UHJLVWHUUZKHUHULGHQWLILHVUHJLVWHU$
%&'(+RU/DVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
5HJLVWHU U
A 111
B 000
C 001
D 010
E 011
H 100
L 101
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'U+/
1RGTCVKQP U+/
1R%QFG /'
1RGTCPFU U+/
0 1 r 1 1 0
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IUHJLVWHUSDLU+/FRQWDLQVWKHQXPEHU75A1HDQGPHPRU\DGGUHVV
$+FRQWDLQVE\WH+WKHH[HFXWLRQRILDC(HL) UHVXOWVLQ58HLQ
UHJLVWHU&
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'U,;G
1RGTCVKQP U,;G
1R%QFG /'
0 1 r 1 1 0
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH,QGH[5HJLVWHU,;FRQWDLQVWKHQXPEHU25AFHWKHLQVWUXFWLRQLDB,
(IX+19H) FDXVHVWKHFDOFXODWLRQRIWKHVXP25AFH19HZKLFKSRLQWV
WRPHPRU\ORFDWLRQ25C8H,IWKLVDGGUHVVFRQWDLQVE\WH39HWKH
LQVWUXFWLRQUHVXOWVLQUHJLVWHU%DOVRFRQWDLQLQJ39H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'U,<G
1RGTCVKQP U,<'
1R%QFG /'
0 1 r 1 1 0
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH,QGH[5HJLVWHU,<FRQWDLQVWKHQXPEHU$)+WKHLQVWUXFWLRQ
LD B(IY+19H) FDXVHVWKHFDOFXODWLRQRIWKHVXP25AFH19HZKLFK
SRLQWVWRPHPRU\ORFDWLRQ25C8H,IWKLVDGGUHVVFRQWDLQVE\WH39HWKH
LQVWUXFWLRQUHVXOWVLQUHJLVWHU%DOVRFRQWDLQLQJ39H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'+/U
1RGTCVKQP +/U
1R%QFG /'
1RGTCPFU +/U
0 1 1 1 0 r
&GUETKRVKQP 7KHFRQWHQWVRIUHJLVWHUUDUHORDGHGWRWKHPHPRU\ORFDWLRQVSHFLILHGE\
WKHFRQWHQWVRIWKH+/UHJLVWHUSDLU7KHV\PEROULGHQWLILHVUHJLVWHU$%
&'(+RU/DVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
5HJLVWHU U
A 111
B 000
C 001
D 010
E 011
H 100
L 101
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHUSDLU+/VSHFLILHVPHPRU\ORFDWLRQ2146HDQG
WKH%UHJLVWHUFRQWDLQVE\WH29HDWH[HFXWLRQRILD(HL)B PHPRU\
DGGUHVV2146HDOVRFRQWDLQV29H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1R%QFG /'
0 1 1 1 0 r
&GUETKRVKQP 7KHFRQWHQWVRIUHJLVWHUUDUHORDGHGWRWKHPHPRU\DGGUHVVVSHFLILHGE\WKH
FRQWHQWVRI,QGH[5HJLVWHU,;VXPPHGZLWKGDWZR¶VFRPSOHPHQW
GLVSODFHPHQWLQWHJHU7KHV\PEROULGHQWLILHVUHJLVWHU$%&'(+RU
/DVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
5HJLVWHU U
A 111
B 000
C 001
D 010
E 011
H 100
L 101
0&\FOHV 76WDWHV 0+](7
5 19 (4, 4, 3, 5, 3) 4.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH&UHJLVWHUFRQWDLQVE\WH1CHDQGWKH,QGH[5HJLVWHU,;FRQWDLQV
3100HWKHQWKHLQVWUXFWLRQLID(IX+6H)C SHUIRUPVWKHVXP3100H
6HDQGORDGV1CHWRPHPRU\ORFDWLRQ3106H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1R%QFG /'
0 1 1 1 0 r
&GUETKRVKQP 7KHFRQWHQWVRIUHVLVWHUUDUHORDGHGWRWKHPHPRU\DGGUHVVVSHFLILHGE\
WKHVXPRIWKHFRQWHQWVRIWKH,QGH[5HJLVWHU,<DQGGDWZR¶V
FRPSOHPHQWGLVSODFHPHQWLQWHJHU7KHV\PEROULVVSHFLILHGDFFRUGLQJWR
WKHIROORZLQJWDEOH
5HJLVWHU U
A 111
B 000
C 001
D 010
E 011
H 100
L 101
0&\FOHV 76WDWHV 0+](7
5 19 (4, 4, 3, 5, 3) 4.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH&UHJLVWHUFRQWDLQVE\WH48HDQGWKH,QGH[5HJLVWHU,<FRQWDLQV
2A11HWKHQWKHLQVWUXFWLRQLD(IY+4H)C SHUIRUPVWKHVXP2A11H
4HDQGORDGV48HWRPHPRU\ORFDWLRQ2A15
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'+/Q
1RGTCVKQP +/Q
1R%QFG /'
1RGTCPFU +/Q
0 0 1 1 0 1 1 0 36
&GUETKRVKQP ,QWHJHUnLVORDGHGWRWKHPHPRU\DGGUHVVVSHFLILHGE\WKHFRQWHQWVRIWKH
+/UHJLVWHUSDLU
0&\FOHV 76WDWHV 0+](7
3 10 (4, 3, 3) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1R%QFG /'
0 0 1 1 0 1 1 0 36
&GUETKRVKQP 7KHnRSHUDQGLVORDGHGWRWKHPHPRU\DGGUHVVVSHFLILHGE\WKHVXPRIWKH
,QGH[5HJLVWHU,;DQGWKHWZR¶VFRPSOHPHQWGLVSODFHPHQWRSHUDQGG
0&\FOHV 76WDWHV 0+](7
5 19 (4, 4, 3,5,3) 4.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH,QGH[5HJLVWHU,;FRQWDLQVWKHQXPEHU219AHWKHLQVWUXFWLRQ
LD(IX+5H)5AH UHVXOWVLQE\WH5AHLQWKHPHPRU\DGGUHVV219FH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1R%QFG /'
0 0 1 1 0 1 1 0 36
&GUETKRVKQP ,QWHJHUQLVORDGHGWRWKHPHPRU\ORFDWLRQVSHFLILHGE\WKHFRQWHQWVRIWKH
,QGH[5HJLVWHUVXPPHGZLWKWKHWZR¶VFRPSOHPHQWGLVSODFHPHQWLQWHJHUG
0&\FOHV 76WDWHV 0+](7
5 19 (4, 4, 3, 5, 3) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH,QGH[5HJLVWHU,<FRQWDLQVWKHQXPEHUA940HWKHLQVWUXFWLRQ
LD(IY+10H)97H UHVXOWVLQE\WH97HLQPHPRU\ORFDWLRQA950H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'$%&
1RGTCVKQP $%&
1R%QFG /'
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\ORFDWLRQVSHFLILHGE\WKHFRQWHQWVRIWKH%&
UHJLVWHUSDLUDUHORDGHGWRWKH$FFXPXODWRU
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH%&UHJLVWHUSDLUFRQWDLQVWKHQXPEHU4747HDQGPHPRU\DGGUHVV
4747HFRQWDLQVE\WH12HWKHQWKHLQVWUXFWLRQ LDA(BC) UHVXOWVLQE\WH
12HLQUHJLVWHU$
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'$'(
1RGTCVKQP $'(
1R%QFG /'
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\ORFDWLRQVSHFLILHGE\WKHUHJLVWHUSDLU'(DUH
ORDGHGWRWKH$FFXPXODWRU
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH'(UHJLVWHUSDLUFRQWDLQVWKHQXPEHU30A2HDQGPHPRU\DGGUHVV
30A2HFRQWDLQVE\WH22HWKHQWKHLQVWUXFWLRQ LDA(DE) UHVXOWVLQE\WH
22HLQUHJLVWHU$
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'$QQ
1RGTCVKQP $QQ
1R%QFG /'
1RGTCPFU $QQ
0 0 1 1 1 0 1 0 3A
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\ORFDWLRQVSHFLILHGE\WKHRSHUDQGVnnDUH
ORDGHGWRWKH$FFXPXODWRU7KHILUVWnRSHUDQGDIWHUWKH2S&RGHLVWKHORZ
RUGHUE\WHRIDE\WHPHPRU\DGGUHVV
0&\FOHV 76WDWHV 0+](7
4 13 (4, 3, 3, 3) 3.25
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRInnLVQXPEHU8832HDQGWKHFRQWHQWRIPHPRU\DGGUHVV
8832HLVE\WH04HDWLQVWUXFWLRQLDA(nn)E\WH04HLVLQWKH
$FFXPXODWRU
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1R%QFG /'
&GUETKRVKQP 7KHFRQWHQWVRIWKH$FFXPXODWRUDUHORDGHGWRWKHPHPRU\ORFDWLRQ
VSHFLILHGE\WKHFRQWHQWVRIWKHUHJLVWHUSDLU%&
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH$FFXPXODWRUFRQWDLQV7AHDQGWKH%&UHJLVWHUSDLUFRQWDLQV1212H
WKHLQVWUXFWLRQLD(BC)A UHVXOWVLQ7AHLQPHPRU\ORFDWLRQ1212H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1R%QFG /'
&GUETKRVKQP 7KHFRQWHQWVRIWKH$FFXPXODWRUDUHORDGHGWRWKHPHPRU\ORFDWLRQ
VSHFLILHGE\WKHFRQWHQWVRIWKH'(UHJLVWHUSDLU
0F\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHUSDLU'(DUH1128HDQGWKH$FFXPXODWRUFRQWDLQV
E\WHA0HWKHLQVWUXFWLRQLD(DE),A UHVXOWVLQA0HLQPHPRU\ORFDWLRQ
1128H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'QQ$
1RGTCVKQP QQ$
1R%QFG /'
1RGTCPFU QQ$
0 0 1 1 0 0 1 0 32
&GUETKRVKQP 7KHFRQWHQWVRIWKH$FFXPXODWRUDUHORDGHGWRWKHPHPRU\DGGUHVV
VSHFLILHGE\WKHRSHUDQGnn7KHILUVWnRSHUDQGDIWHUWKH2S&RGHLVWKH
ORZRUGHUE\WHRInn
0&\FOHV 76WDWHV 0+](7
4 13 (4, 3, 3, 3) 3.25
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDUHE\WHD7HDWH[HFXWLRQRI
LD(3141H)AD7H UHVXOWVLQPHPRU\ORFDWLRQ3141H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'$,
1RGTCVKQP $
1R%QFG /'
1RGTCPFU $,
1 1 1 0 1 1 0 1 ED
0 1 0 1 0 1 1 1 57
&GUETKRVKQP 7KHFRQWHQWVRIWKH,QWHUUXSW9HFWRU5HJLVWHU,DUHORDGHGWRWKH$FFXPXODWRU
0&\FOHV 76WDWHV 0+](7
2 9 (4, 5) 2.25
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLI,5HJLVWHULVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLI,5HJLVWHULV]HURUHVHWRWKHUZLVH
+LVUHVHW
39FRQWDLQVFRQWHQWVRI,))
1LVUHVHW
&LVQRWDIIHFWHG
If an interrupt occurs during execution of this instruction, the Parity
flag contains a 0.
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'$5
1RGTCVKQP $5
1R%QFG /'
1RGTCPFU $5
1 1 1 0 1 1 0 1 ED
0 1 0 1 1 1 1 1 5F
&GUETKRVKQP 7KHFRQWHQWVRI0HPRU\5HIUHVK5HJLVWHU5DUHORDGHGWRWKH$FFXPXODWRU
0&\FOHV 76WDWHV 0+](7
2 9 (4, 5) 2.25
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLI55HJLVWHULVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLI55HJLVWHULV]HURUHVHWRWKHUZLVH
+LVUHVHW
39FRQWDLQVFRQWHQWVRI,))
1LVUHVHW
&LVQRWDIIHFWHG
If an interrupt occurs during execution of this instruction, the parity
flag contains a 0.
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/',$
1RGTCVKQP ,$
1R%QFG /'
1RGTCPFU ,$
1 1 1 0 1 1 0 1 ED
0 1 0 0 0 1 1 1 47
&GUETKRVKQP 7KHFRQWHQWVRIWKH$FFXPXODWRUDUHORDGHGWRWKH,QWHUUXSW&RQWURO9HFWRU
5HJLVWHU,
0&\FOHV 76WDWHV 0+](7
2 9 (4, 5) 2.25
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'5$
1RGTCVKQP 5$
1R%QFG /'
1RGTCPFU 5$
1 1 1 0 1 1 0 1 ED
0 1 0 0 1 1 1 1 4F
&GUETKRVKQP 7KHFRQWHQWVRIWKH$FFXPXODWRUDUHORDGHGWRWKH0HPRU\5HIUHVK
UHJLVWHU5
0&\FOHV 76WDWHV 0+](7
2 9 (4, 5) 2.25
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%LW/RDG*URXS
/'GGQQ
1RGTCVKQP GGQQ
1R%QFG /'
1RGTCPFU GGQQ
0 0 d d 0 0 0 1
&GUETKRVKQP 7KHE\WHLQWHJHUnnLVORDGHGWRWKHddUHJLVWHUSDLUZKHUHGGGHILQHVWKH
%&'(+/RU63UHJLVWHUSDLUVDVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
3DLU GG
BC 00
DE 01
HL 10
SP 11
7KHILUVWnRSHUDQGDIWHUWKH2S&RGHLVWKHORZRUGHUE\WH
0&\FOHV 76WDWHV 0+](7
2 10 (4, 3, 3) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/',;QQ
1RGTCVKQP ,[QQ
1R%QFG /'
1RGTCPFU ,;QQ
1 1 0 1 1 1 0 1 DD
0 0 1 0 0 0 0 1 21
&GUETKRVKQP ,QWHJHUnnLVORDGHGWRWKH,QGH[5HJLVWHU,;7KHILUVWnRSHUDQGDIWHUWKH
2S&RGHLVWKHORZRUGHUE\WH
0&\FOHV 76WDWHV 0+](7
4 14 (4, 4, 3, 3) 3.50
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/',<QQ
1RGTCVKQP ,<QQ
1R%QFG /'
1RGTCPFU ,<QQ
1 1 1 1 1 1 0 1 FD
0 0 1 0 0 0 0 1 21
&GUETKRVKQP ,QWHJHUnnLVORDGHGWRWKH,QGH[5HJLVWHU,<7KHILUVWnRSHUDQGDIWHUWKH
2S&RGHLVWKHORZRUGHUE\WH
0&\FOHV 76WDWHV 0+](7
4 14 (4, 4, 3, 3) 3.50
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'+/QQ
1RGTCVKQP +QQ/QQ
1R%QFG /'
1RGTCPFU +/QQ
0 0 1 0 1 0 1 0 2A
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IDGGUHVV4545HFRQWDLQV37HDQGDGGUHVV4546HFRQWDLQVA1HDW
LQVWUXFWLRQLDHL(4545H) WKH+/UHJLVWHUSDLUFRQWDLQVA137H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'GGQQ
1RGTCVKQP GGKQQGGOQQ
1R%QFG /'
1RGTCPFU GGQQ
1 1 1 0 1 1 0 1 ED
0 1 d d 1 0 1 1
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,I$GGUHVV2130HFRQWDLQV65HDQGDGGUHVV2131MFRQWDLQV78HDW
LQVWUXFWLRQLDBC(2130H) WKH%&UHJLVWHUSDLUFRQWDLQV7865H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/',;QQ
1RGTCVKQP ,;KQQ,;,QQ
1R%QFG /'
1RGTCPFU ,;QQ
1 1 0 1 1 1 0 1 DD
0 0 1 0 1 0 1 0 2A
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IDGGUHVV6666HFRQWDLQV92HDQGDGGUHVV6667HFRQWDLQVDAHDW
LQVWUXFWLRQLDIX(6666H) WKH,QGH[5HJLVWHU,;FRQWDLQVDA92H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/',<QQ
1RGTCVKQP ,<KQQ,<,QQ
1R%QFG /'
1RGTCPFU ,<QQ
1 1 1 1 1 1 0 1 FD
0 0 1 0 1 0 1 0 2A
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IDGGUHVV6666HFRQWDLQV92HDQGDGGUHVV6667HFRQWDLQVDAHDW
LQVWUXFWLRQLDIY(6666H) WKH,QGH[5HJLVWHU,<FRQWDLQVDA92H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'QQ+/
1RGTCVKQP QQ+QQ/
1R%QFG /'
1RGTCPFU QQ+/
0 0 1 0 0 0 1 0 22
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWRIUHJLVWHUSDLU+/LV483AHDWLQVWUXFWLRQ
LD (B2291-1), HL DGGUHVVB229HFRQWDLQV3AHDQGDGGUHVVB22AH
FRQWDLQV48H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'QQGG
1RGTCVKQP QQGGKQQGGO
1R%QFG /'
1RGTCPFU QQGG
1 1 1 0 1 1 0 1 ED
0 0 d d 0 0 1 1
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IUHJLVWHUSDLU%&FRQWDLQVWKHQXPEHU4644HWKHLQVWUXFWLRQLD
1000H%&UHVXOWVLQ44HLQPHPRU\ORFDWLRQ1000HDQG46HLQ
PHPRU\ORFDWLRQ1001H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'QQ,;
1RGTCVKQP QQ,;KQQ,;,
1R%QFG /'
1RGTCPFU QQ,;
1 1 0 1 1 1 0 1 DD
0 0 1 0 0 0 1 0 22
&GUETKRVKQP 7KHORZRUGHUE\WHLQ,QGH[5HJLVWHU,;LVORDGHGWRPHPRU\DGGUHVVnn
WKHXSSHURUGHUE\WHLVORDGHGWRWKHQH[WKLJKHVWDGGUHVVnn7KHILUVW
nRSHUDQGDIWHUWKH2S&RGHLVWKHORZRUGHUE\WHRInn
0&\FOHV 76WDWHV 0+](7
6 20 (4, 4, 3, 3, 3, 3) 5.00
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'QQ,<
1RGTCVKQP QQ,<KQQ,<,
1R%QFG /'
1RGTCPFU QQ,<
1 1 1 1 1 1 0 1 FD
0 0 1 0 0 0 1 0 22
&GUETKRVKQP 7KHORZRUGHUE\WHLQ,QGH[5HJLVWHU,<LVORDGHGWRPHPRU\DGGUHVVnn
WKHXSSHURUGHUE\WHLVORDGHGWRPHPRU\ORFDWLRQnn7KHILUVWn
RSHUDQGDIWHUWKH2S&RGHLVWKHORZRUGHUE\WHRInn
0&\FOHV 76WDWHV 0+](7
6 20 (4, 4, 3, 3, 3, 3) 5.00
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'63+/
1RGTCVKQP 63+/
1R%QFG /'
1RGTCPFU 63+/
1 1 1 r 1 0 0 1 F9
&GUETKRVKQP 7KHFRQWHQWVRIWKHUHJLVWHUSDLU+/DUHORDGHGWRWKH6WDFN3RLQWHU63
0&\FOHV 76WDWHV 0+](7
1 6 1.5
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'63,;
1RGTCVKQP 63,;
1R%QFG /'
1RGTCPFU 63;
1 1 0 1 1 1 0 1 DD
1 1 1 1 1 0 0 1 F9
&GUETKRVKQP 7KHE\WHFRQWHQWVRI,QGH[5HJLVWHU,;DUHORDGHGWRWKH6WDFN3RLQWHU63
0&\FOHV 76WDWHV 0+](7
2 10 (4, 6) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIWKH,QGH[5HJLVWHU,;DUH98DAHDWLQVWUXFWLRQ
LDSPIX WKHFRQWHQWVRIWKH6WDFN3RLQWHUDUHDOVR98DAH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/'63,<
1RGTCVKQP 63,<
1R%QFG /'
1RGTCPFU 63O<
1 1 1 1 1 1 0 1 FD
1 1 1 1 1 0 0 1 F9
&GUETKRVKQP 7KHE\WHFRQWHQWVRI,QGH[5HJLVWHU,<DUHORDGHGWRWKH6WDFN3RLQWHU63
0&\FOHV 76WDWHV 0+](7
2 10 (4, 6) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,I,QGH[5HJLVWHU,<FRQWDLQVWKHLQWHJHUA227HDWLQVWUXFWLRQ
LDSPIY WKH6WDFN3RLQWHUDOVRFRQWDLQVA227H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
386+TT
1RGTCVKQP 63TT/63TT+
1R%QFG 386+
1RGTCPFU TT
1 1 q q 0 1 0 1
&GUETKRVKQP 7KHFRQWHQWVRIWKHUHJLVWHUSDLUTTDUHSXVKHGWRWKHH[WHUQDOPHPRU\
/,)2ODVWLQILUVWRXW6WDFN7KH6WDFN3RLQWHU63UHJLVWHUSDLUKROGVWKH
ELWDGGUHVVRIWKHFXUUHQWWRSRIWKH6WDFN7KLVLQVWUXFWLRQILUVW
GHFUHPHQWV63DQGORDGVWKHKLJKRUGHUE\WHRIUHJLVWHUSDLUTTWRWKH
PHPRU\DGGUHVVVSHFLILHGE\WKH637KH63LVGHFUHPHQWHGDJDLQDQG
ORDGVWKHORZRUGHUE\WHRITTWRWKHPHPRU\ORFDWLRQFRUUHVSRQGLQJWRWKLV
QHZDGGUHVVLQWKH637KHRSHUDQGTTLGHQWLILHVUHJLVWHUSDLU%&'(+/
RU$)DVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
3DLU TT
BC 00
DE 01
HL 10
AF 11
0&\FOHV 76WDWHV 0+](7
3 11 (5, 3, 3) 2.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH$)UHJLVWHUSDLUFRQWDLQV2233HDQGWKH6WDFN3RLQWHUFRQWDLQV
+DWLQVWUXFWLRQPUSHAFPHPRU\DGGUHVV1006HFRQWDLQV22H
PHPRU\DGGUHVV1005HFRQWDLQV33HDQGWKH6WDFN3RLQWHUFRQWDLQV
1005H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
386+,;
1RGTCVKQP 63,;/63,;+
1R%QFG 386+
1RGTCPFU ,;
1 1 0 1 1 1 0 1 DD
1 1 1 0 0 1 0 1 E5
&GUETKRVKQP 7KHFRQWHQWVRIWKH,QGH[5HJLVWHU,;DUHSXVKHGWRWKHH[WHUQDOPHPRU\
/,)2ODVWLQILUVWRXW6WDFN7KH6WDFN3RLQWHU63UHJLVWHUSDLUKROGVWKH
ELWDGGUHVVRIWKHFXUUHQWWRSRIWKH6WDFN7KLVLQVWUXFWLRQILUVW
GHFUHPHQWV63DQGORDGVWKHKLJKRUGHUE\WHRI,;WRWKHPHPRU\DGGUHVV
VSHFLILHGE\63WKHQGHFUHPHQWV63DJDLQDQGORDGVWKHORZRUGHUE\WHWR
WKHPHPRU\ORFDWLRQFRUUHVSRQGLQJWRWKLVQHZDGGUHVVLQ63
0&\FOHV 76WDWHV 0+](7
4 15 (4, 5, 3, 3) 3.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH,QGH[5HJLVWHU,;FRQWDLQV2233HDQGWKH6WDFN3RLQWHUFRQWDLQV
1007HDWLQVWUXFWLRQPUSHIXPHPRU\DGGUHVV1006HFRQWDLQV22H
PHPRU\DGGUHVV1005HFRQWDLQV33HDQGWKH6WDFN3RLQWHUFRQWDLQV
1005H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
386+,<
1RGTCVKQP 63,</63,<+
1R%QFG 386+
1RGTCPFU ,<
1 1 1 1 1 1 0 1 FD
1 1 1 0 0 1 0 1 E5
&GUETKRVKQP 7KHFRQWHQWVRIWKH,QGH[5HJLVWHU,<DUHSXVKHGWRWKHH[WHUQDOPHPRU\
/,)2ODVWLQILUVWRXW6WDFN7KH6WDFN3RLQWHU63UHJLVWHUSDLUKROGVWKH
ELWDGGUHVVRIWKHFXUUHQWWRSRIWKH6WDFN7KLVLQVWUXFWLRQILUVW
GHFUHPHQWVWKH63DQGORDGVWKHKLJKRUGHUE\WHRI,<WRWKHPHPRU\
DGGUHVVVSHFLILHGE\63WKHQGHFUHPHQWV63DJDLQDQGORDGVWKHORZRUGHU
E\WHWRWKHPHPRU\ORFDWLRQFRUUHVSRQGLQJWRWKLVQHZDGGUHVVLQ63
0&\FOHV 76WDWHV 0+](7
4 15 (4, 5, 3, 3) 3.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH,QGH[5HJLVWHU,<FRQWDLQV2233HDQGWKH6WDFN3RLQWHU&RQWDLQV
1007HDWLQVWUXFWLRQPUSHIYPHPRU\DGGUHVV1006HFRQWDLQV22H
PHPRU\DGGUHVV1005HFRQWDLQV33HDQGWKH6WDFN3RLQWHUFRQWDLQV
+
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
323TT
1RGTCVKQP TT+63TT/63
1R%QFG 323
1RGTCPFU TT
1 1 q q 0 0 0 1
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH6WDFN3RLQWHUFRQWDLQV1000HPHPRU\ORFDWLRQ1000HFRQWDLQV55H
DQGORFDWLRQ1001HFRQWDLQV33HWKHLQVWUXFWLRQPOPHLUHVXOWVLQUHJLVWHU
SDLU+/FRQWDLQLQJ3355HDQGWKH6WDFN3RLQWHUFRQWDLQLQJ1002H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
323,;
1RGTCVKQP ,;+63,;/63
1R%QFG 323
1RGTCPFU ,;
1 1 0 1 1 1 0 1 DD
1 1 1 0 0 0 0 1 E1
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH6WDFN3RLQWHUFRQWDLQV1000HPHPRU\ORFDWLRQ1000HFRQWDLQV55H
DQGORFDWLRQ1001HFRQWDLQV33HWKHLQVWUXFWLRQPOPIXUHVXOWVLQ,QGH[
5HJLVWHU,;FRQWDLQLQJ3355HDQGWKH6WDFN3RLQWHUFRQWDLQLQJ1002H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
323,<
1RGTCVKQP ,<+63;,</63
1R%QFG 323
1RGTCPFU O<
1 1 0 1 1 1 0 1 DD
1 1 1 1 1 1 0 1 FD
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH6WDFN3RLQWHU&RQWDLQV1000HPHPRU\ORFDWLRQ1000HFRQWDLQV
55HDQGORFDWLRQ1001HFRQWDLQV33HWKHLQVWUXFWLRQPOPIYUHVXOWVLQ
,QGH[5HJLVWHU,<FRQWDLQLQJ3355HDQGWKH6WDFN3RLQWHUFRQWDLQLQJ
1002H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
([FKDQJH%ORFN7UDQVIHUDQG6HDUFK*URXS
(;'(+/
1RGTCVKQP '(+/
1R%QFG (;
1RGTCPFU '(+/
1 1 1 0 1 0 1 1 EB
&GUETKRVKQP 7KHE\WHFRQWHQWVRIUHJLVWHUSDLUV'(DQG+/DUHH[FKDQJHG
0&\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWRIUHJLVWHUSDLU'(LVWKHQXPEHU2822HDQGWKHFRQWHQWRI
WKHUHJLVWHUSDLU+/LVQXPEHU499AHDWLQVWUXFWLRQEXDEHL WKHFRQWHQW
RIUHJLVWHUSDLU'(LV499AHDQGWKHFRQWHQWRIUHJLVWHUSDLU+/LV2822H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
(;$)$)
1RGTCVKQP $)$)
1R%QFG (;
1RGTCPFU $)$)
0 0 0 0 1 0 0 0 08
&GUETKRVKQP 7KHE\WHFRQWHQWVRIWKHUHJLVWHUSDLUV$)DQG$)DUHH[FKDQJHG
5HJLVWHUSDLU$)FRQVLVWVRIUHJLVWHUV$
DQG)
0&\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWRIUHJLVWHUSDLU$)LVQXPEHU9900HDQGWKHFRQWHQWRI
UHJLVWHUSDLU$)LVQXPEHU5944HDWLQVWUXFWLRQEXAFAF’WKHFRQWHQWVRI
$)LV5944HDQGWKHFRQWHQWVRI$)
LV9900H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
(;;
1RGTCVKQP %&%&
'('(
+/+/
1R%QFG (;;
1RGTCPFU ²
1 1 0 1 1 0 0 0 D9
&GUETKRVKQP (DFKE\WHYDOXHLQUHJLVWHUSDLUV%&'(DQG+/LVH[FKDQJHGZLWKWKH
E\WHYDOXHLQ%&
'(
DQG+/
UHVSHFWLYHO\
0&\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHUSDLUV%&'(DQG+/DUHWKHQXPEHUV445AH
3DA2HDQG8859HUHVSHFWLYHO\DQGWKHFRQWHQWVRIUHJLVWHUSDLUV%&
'(
DQG+/
DUH0988H9300HDQG00E7HUHVSHFWLYHO\DWLQVWUXFWLRQ
EXX WKHFRQWHQWVRIWKHUHJLVWHUSDLUVDUHDVIROORZV%&
FRQWDLQV+
'(
FRQWDLQV9300H+/FRQWDLQV00E7H%&
FRQWDLQV445AH'(
FRQWDLQV3DA2HDQG+/
FRQWDLQV8859H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
(;63+/
1RGTCVKQP +63/63
1R%QFG (;
1RGTCPFU 63+/
1 1 1 0 0 0 1 1 E3
&GUETKRVKQP 7KHORZRUGHUE\WHFRQWDLQHGLQUHJLVWHUSDLU+/LVH[FKDQJHGZLWKWKH
FRQWHQWVRIWKHPHPRU\DGGUHVVVSHFLILHGE\WKHFRQWHQWVRIUHJLVWHUSDLU63
6WDFN3RLQWHUDQGWKHKLJKRUGHUE\WHRI+/LVH[FKDQJHGZLWKWKHQH[W
KLJKHVWPHPRU\DGGUHVV63
0&\FOHV 76WDWHV 0+](7
5 19 (4, 3, 4, 3, 5) 4.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV7012HWKH63UHJLVWHUSDLUFRQWDLQV8856H
WKHPHPRU\ORFDWLRQ8856HFRQWDLQVE\WH11HDQGPHPRU\ORFDWLRQ
8857HFRQWDLQVE\WH22HWKHQWKHLQVWUXFWLRQEX(SP)HLUHVXOWVLQWKH
+/UHJLVWHUSDLUFRQWDLQLQJQXPEHU2211HPHPRU\ORFDWLRQ8856H
FRQWDLQLQJE\WH12HPHPRU\ORFDWLRQ8857HFRQWDLQLQJE\WH70HDQG
6WDFN3RLQWHUFRQWDLQLQJ8856H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
(;63,;
1RGTCVKQP ,;+63,;/63
1R%QFG (;
1RGTCPFU 63,;
1 1 0 1 1 1 0 1 DD
1 1 1 0 0 0 1 1 E3
&GUETKRVKQP 7KHORZRUGHUE\WHLQ,QGH[5HJLVWHU,;LVH[FKDQJHGZLWKWKHFRQWHQWVRI
WKHPHPRU\DGGUHVVVSHFLILHGE\WKHFRQWHQWVRIUHJLVWHUSDLU636WDFN
3RLQWHUDQGWKHKLJKRUGHUE\WHRI,;LVH[FKDQJHGZLWKWKHQH[WKLJKHVW
PHPRU\DGGUHVV63
0F\FOHV 76WDWHV 0+](7
6 23 (4, 4, 3, 4, 3, 5) 5.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH,QGH[5HJLVWHU,;FRQWDLQV3988HWKH63UHJLVWHUSDLU&RQWDLQV
0100HPHPRU\ORFDWLRQ0100HFRQWDLQVE\WH90HDQGPHPRU\ORFDWLRQ
0101HFRQWDLQVE\WH48HWKHQWKHLQVWUXFWLRQEX(SP)IXUHVXOWVLQWKH
,;UHJLVWHUSDLUFRQWDLQLQJQXPEHU4890HPHPRU\ORFDWLRQ0100H
FRQWDLQLQJ88HPHPRU\ORFDWLRQ0101HFRQWDLQLQJ39HDQGWKH6WDFN
3RLQWHUFRQWDLQLQJ0100H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
(;63,<
1RGTCVKQP ,<+63,</63
1R%QFG (;
1RGTCPFU 63,<
1 1 1 1 1 1 0 1 FD
1 1 1 0 0 0 1 1 E3
&GUETKRVKQP 7KHORZRUGHUE\WHLQ,QGH[5HJLVWHU,<LVH[FKDQJHGZLWKWKHFRQWHQWVRI
WKHPHPRU\DGGUHVVVSHFLILHGE\WKHFRQWHQWVRIUHJLVWHUSDLU636WDFN
3RLQWHUDQGWKHKLJKRUGHUE\WHRI,<LVH[FKDQJHGZLWKWKHQH[WKLJKHVW
PHPRU\DGGUHVV63
0&\FOHV 76WDWHV 0+](7
6 23 (4, 4, 3, 4, 3, 5) 5.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH,QGH[5HJLVWHU,<FRQWDLQV3988HWKH63UHJLVWHUSDLUFRQWDLQV
0100HPHPRU\ORFDWLRQ0100HFRQWDLQVE\WH90HDQGPHPRU\ORFDWLRQ
0101HFRQWDLQVE\WH48HWKHQWKHLQVWUXFWLRQEX(SP)IYUHVXOWVLQWKH
,<UHJLVWHUSDLUFRQWDLQLQJQXPEHU4890HPHPRU\ORFDWLRQ0100H
FRQWDLQLQJ88HPHPRU\ORFDWLRQ0101HFRQWDLQLQJ39HDQGWKH6WDFN
3RLQWHUFRQWDLQLQJ0100H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/',
1RGTCVKQP '(+/'('(+/+/%&%&
1R%QFG /',
1RGTCPFU 63+/
1 1 1 0 1 1 0 1 ED
1 0 1 0 0 0 0 0 A0
&GUETKRVKQP $E\WHRIGDWDLVWUDQVIHUUHGIURPWKHPHPRU\ORFDWLRQDGGUHVVHGE\WKH
FRQWHQWVRIWKH+/UHJLVWHUSDLUWRWKHPHPRU\ORFDWLRQDGGUHVVHGE\WKH
FRQWHQWVRIWKH'(UHJLVWHUSDLU7KHQERWKWKHVHUHJLVWHUSDLUVDUH
LQFUHPHQWHGDQGWKH%&%\WH&RXQWHUUHJLVWHUSDLULVGHFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
4 16 (4, 4, 3, 5) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVUHVHW
39LVVHWLI%&UHVHWRWKHUZLVH
1LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV1111HPHPRU\ORFDWLRQ1111HFRQWDLQV
E\WH88HWKH'(UHJLVWHUSDLUFRQWDLQV2222HWKHPHPRU\ORFDWLRQ2222H
FRQWDLQVE\WH66HDQGWKH%&UHJLVWHUSDLUFRQWDLQV7HWKHQWKHLQVWUXFWLRQ
LDI UHVXOWVLQWKHIROORZLQJFRQWHQWVLQUHJLVWHUSDLUVDQGPHPRU\DGGUHVVHV
+/ FRQWDLQV1112H
+ FRQWDLQV88H
'( FRQWDLQV2223H
+ FRQWDLQV88H
%& FRQWDLQV6H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/',5
1RGTCVKQP '(+/'('(+/+/%&)%&
1R%QFG /',5
1RGTCPFU %
1 1 1 0 1 1 0 1 ED
1 0 1 1 0 0 0 0 B0
&GUETKRVKQP 7KLVE\WHLQVWUXFWLRQWUDQVIHUVDE\WHRIGDWDIURPWKHPHPRU\ORFDWLRQ
DGGUHVVHGE\WKHFRQWHQWVRIWKH+/UHJLVWHUSDLUWRWKHPHPRU\ORFDWLRQ
DGGUHVVHGE\WKH'(UHJLVWHUSDLU%RWKWKHVHUHJLVWHUSDLUVDUHLQFUHPHQWHG
DQGWKH%&%\WH&RXQWHUUHJLVWHUSDLULVGHFUHPHQWHG,IGHFUHPHQWLQJ
FDXVHVWKH%&WRJRWR]HURWKHLQVWUXFWLRQLVWHUPLQDWHG,I%&LVQRW]HUR
WKHSURJUDPFRXQWHULVGHFUHPHQWHGE\WZRDQGWKHLQVWUXFWLRQLVUHSHDWHG
,QWHUUXSWVDUHUHFRJQL]HGDQGWZRUHIUHVKF\FOHVDUHH[HFXWHGDIWHUHDFK
GDWDWUDQVIHU:KHQ%&LVVHWWR]HURSULRUWRLQVWUXFWLRQH[HFXWLRQWKH
LQVWUXFWLRQORRSVWKURXJK.E\WHV
)RU%&
0&\FOHV 76WDWHV 0+](7
5 21 (4, 4, 3, 5, 5) 5.25
)RU%&
0&\FOHV 76WDWHV 0+](7
4 16 (4, 4, 3, 5) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVUHVHW
39LVUHVHW
1LVUHVHW
&LVQRWDIIHFWHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV11111HWKH'(UHJLVWHUSDLUFRQWDLQV
2222HWKH%&UHJLVWHUSDLUFRQWDLQV0003HDQGPHPRU\ORFDWLRQVKDYH
WKHVHFRQWHQWV
+ FRQWDLQV 88H +FRQWDLQV66H
+ FRQWDLQV 36H +FRQWDLQV59H
+ FRQWDLQV A5H +FRQWDLQVC5H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/''
1RGTCVKQP '(+/'('(+/+/%&%&
1R%QFG /''
1RGTCPFU ²
1 1 1 0 1 1 0 1 ED
1 0 1 0 1 0 0 0 A8
&GUETKRVKQP 7KLVE\WHLQVWUXFWLRQWUDQVIHUVDE\WHRIGDWDIURPWKHPHPRU\ORFDWLRQ
DGGUHVVHGE\WKHFRQWHQWVRIWKH+/UHJLVWHUSDLUWRWKHPHPRU\ORFDWLRQ
DGGUHVVHGE\WKHFRQWHQWVRIWKH'(UHJLVWHUSDLU7KHQERWKRIWKHVHUHJLVWHU
SDLUVLQFOXGLQJWKH%&%\WH&RXQWHUUHJLVWHUSDLUDUHGHFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
4 16 (4, 4, 3, 5) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVUHVHW
39LVVHWLI%&UHVHWRWKHUZLVH
1LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV1111HPHPRU\ORFDWLRQ1111HFRQWDLQV
E\WH88HWKH'(UHJLVWHUSDLUFRQWDLQV2222HPHPRU\ORFDWLRQ2222H
FRQWDLQVE\WH66HDQGWKH%&UHJLVWHUSDLUFRQWDLQV7HWKHQLQVWUXFWLRQ
LDD UHVXOWVLQWKHIROORZLQJFRQWHQWVLQUHJLVWHUSDLUVDQGPHPRU\
DGGUHVVHV
+/ FRQWDLQV1110H
+ FRQWDLQV88H
'( FRQWDLQV2221H
+ FRQWDLQV88H
%& FRQWDLQV6H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/''5
1RGTCVKQP '(+/'('+/+/%&%&
1R%QFG /''5
1RGTCPFU ²
1 1 1 0 1 1 0 1 ED
1 0 1 1 1 0 0 0 B8
&GUETKRVKQP 7KLVE\WHLQVWUXFWLRQWUDQVIHUVDE\WHRIGDWDIURPWKHPHPRU\
ORFDWLRQDGGUHVVHGE\WKHFRQWHQWVRIWKH+/UHJLVWHUSDLUWRWKHPHPRU\
ORFDWLRQDGGUHVVHGE\WKHFRQWHQWVRIWKH'(UHJLVWHUSDLU7KHQERWKRI
WKHVHUHJLVWHUVDVZHOODVWKH%&%\WH&RXQWHUDUHGHFUHPHQWHG,I
GHFUHPHQWLQJFDXVHV%&WRJRWR]HURWKHLQVWUXFWLRQLVWHUPLQDWHG,I
%&LVQRW]HURWKHSURJUDPFRXQWHULVGHFUHPHQWHGE\WZRDQGWKH
LQVWUXFWLRQLVUHSHDWHG,QWHUUXSWVDUHUHFRJQL]HGDQGWZRUHIUHVKF\FOHV
H[HFXWHDIWHUHDFKGDWDWUDQVIHU
:KHQ%&LVVHWWR]HURSULRUWRLQVWUXFWLRQH[HFXWLRQWKHLQVWUXFWLRQORRSV
WKURXJK.E\WHV
)RU%&
0&\FOHV 76WDWHV 0+](7
5 21 (4, 4, 3, 5, 5) 5.25
)RU%&
0&\FOHV 76WDWHV 0+](7
4 16 (4, 4, 3, 5) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVUHVHW
39LVUHVHW
1LVUHVHW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV1114HWKH'(UHJLVWHUSDLUFRQWDLQV
2225HWKH%&UHJLVWHUSDLUFRQWDLQV0003HDQGPHPRU\ORFDWLRQVKDYH
WKHVHFRQWHQWV
1114H FRQWDLQV A5H 2225H FRQWDLQV C5H
1113H FRQWDLQV 36H 2224H FRQWDLQV 59H
1112H FRQWDLQV 88H 2223H FRQWDLQV 66H
7KHQDWH[HFXWLRQRI LDDR WKHFRQWHQWVRIUHJLVWHUSDLUVDQGPHPRU\
ORFDWLRQVDUH
+/ FRQWDLQV 1111H
'( FRQWDLQV 2222H
'& FRQWDLQV 0000H
1114H FRQWDLQV A5H 2225H FRQWDLQV A5H
1113H FRQWDLQV 36H 2224H FRQWDLQV 36H
1112H FRQWDLQV 88H 2223H FRQWDLQV 88H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&3,
1RGTCVKQP $+/+/+/%&%&
1R%QFG &3,
1RGTCPFU ²
1 1 1 0 1 1 0 1 ED
1 0 1 0 0 0 0 0 A1
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\ORFDWLRQDGGUHVVHGE\WKH+/UHJLVWHULV
FRPSDUHGZLWKWKHFRQWHQWVRIWKH$FFXPXODWRU,QFDVHRIDWUXHFRPSDUH
DFRQGLWLRQELWLVVHW7KHQ+/LVLQFUHPHQWHGDQGWKH%\WH&RXQWHU
UHJLVWHUSDLU%&LVGHFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
4 16 (4, 4, 3, 5) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLI$LV+/UHVHWRWKHUZLVH
+LVVHWLIERUURZIURPELWUHVHWRWKHUZLVH
39LVVHWLI%&LVQRWUHVHWRWKHUZLVH
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV1111HPHPRU\ORFDWLRQ1111HFRQWDLQV
3BHWKH$FFXPXODWRUFRQWDLQV3BHDQGWKH%\WH&RXQWHUFRQWDLQV0001H
$WH[HFXWLRQRI CPI WKH%\WH&RXQWHUFRQWDLQV0000HWKH+/UHJLVWHU
SDLUFRQWDLQV1112HWKH=IODJLQWKH)UHJLVWHUVHWVDQGWKH39IODJLQWKH
)UHJLVWHUUHVHWV7KHUHLVQRHIIHFWRQWKHFRQWHQWVRIWKH$FFXPXODWRURU
DGGUHVV1111H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&3,5
1RGTCVKQP $+/+/+/%&%&
1R%QFG &3,5
1RGTCPFU ²
1 1 1 0 1 1 0 1 ED
1 0 1 1 0 0 0 1 B1
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\ORFDWLRQDGGUHVVHGE\WKH+/UHJLVWHUSDLULV
FRPSDUHGZLWKWKHFRQWHQWVRIWKH$FFXPXODWRU,QFDVHRIDWUXHFRPSDUHD
FRQGLWLRQELWLVVHW+/LVLQFUHPHQWHGDQGWKH%\WH&RXQWHUUHJLVWHUSDLU
%&LVGHFUHPHQWHG,IGHFUHPHQWLQJFDXVHV%&WRJRWR]HURRULI$ +/
WKHLQVWUXFWLRQLVWHUPLQDWHG,I%&LVQRW]HURDQG$+/WKHSURJUDP
FRXQWHULVGHFUHPHQWHGE\WZRDQGWKHLQVWUXFWLRQLVUHSHDWHG,QWHUUXSWVDUH
UHFRJQL]HGDQGWZRUHIUHVKF\FOHVDUHH[HFXWHGDIWHUHDFKGDWDWUDQVIHU
,I%&LVVHWWR]HUREHIRUHLQVWUXFWLRQH[HFXWLRQWKHLQVWUXFWLRQORRSV
WKURXJK.E\WHVLIQRPDWFKLVIRXQG
)RU%&DQG$+/
0F\FOHV 76WDWHV 0+](7
5 21 (4, 4, 3, 5, 5) 5.25
)RU%& DQG$ +/
0&\FOHV 76WDWHV 0+](7
4 16 (4, 4, 3, 5) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLI$HTXDOV+/UHVHWRWKHUZLVH
+LVVHWLIERUURZIURPELWUHVHWRWKHUZLVH
39LVVHWLI%&GRHVQRWHTXDOUHVHWRWKHUZLVH
1LVVHW
&LVQRWDIIHFWHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV1111HWKH$FFXPXODWRUFRQWDLQVF3HWKH
%\WH&RXQWHUFRQWDLQV0007HDQGPHPRU\ORFDWLRQVKDYHWKHVHFRQWHQWV
1111H FRQWDLQV 52H
1112H FRQWDLQV 00H
1113H FRQWDLQV F3H
7KHQDWH[HFXWLRQRI CPIR WKHFRQWHQWVRIUHJLVWHUSDLU+/LV1114HWKH
FRQWHQWVRIWKH%\WH&RXQWHULV0004HWKH39IODJLQWKH)UHJLVWHUVHWV
DQGWKH=IODJLQWKH)UHJLVWHUVHWV
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&3'
1RGTCVKQP $+/+/+/%&%&
1R%QFG &3'
1RGTCPFU ²
1 1 1 0 1 1 0 1 ED
1 0 1 0 1 0 0 1 A9
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\ORFDWLRQDGGUHVVHGE\WKH+/UHJLVWHUSDLULV
FRPSDUHGZLWKWKHFRQWHQWVRIWKH$FFXPXODWRU,QFDVHRIDWUXH
FRPSDUHDFRQGLWLRQELWLVVHW7KH+/DQG%\WH&RXQWHUUHJLVWHUSDLU
%&DUHGHFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
4 16 (4, 4, 3, 5) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLI$HTXDOV+/UHVHWRWKHUZLVH
+LVVHWLIERUURZIURPELWUHVHWRWKHUZLVH
39LVVHWLI%&[UHVHWRWKHUZLVH
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV1111HPHPRU\ORFDWLRQ1111HFRQWDLQV
3BHWKH$FFXPXODWRUFRQWDLQV3BHDQGWKH%\WH&RXQWHUFRQWDLQV0001H
$WH[HFXWLRQRI CPD WKH%\WH&RXQWHUFRQWDLQV0000HWKH+/UHJLVWHU
SDLUFRQWDLQV1110HWKHIODJLQWKH)UHJLVWHUVHWVDQGWKH39IODJLQWKH)
UHJLVWHUUHVHWV7KHUHLVQRHIIHFWRQWKHFRQWHQWVRIWKH$FFXPXODWRURU
DGGUHVV1111H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&3'5
1RGTCVKQP $+/+/+/%&%&
1R%QFG &3'5
1RGTCPFU ²
1 1 1 0 1 1 0 1 ED
1 0 1 1 1 0 0 1 B9
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\ORFDWLRQDGGUHVVHGE\WKH+/UHJLVWHUSDLULV
FRPSDUHGZLWKWKHFRQWHQWVRIWKH$FFXPXODWRU,QFDVHRIDWUXHFRPSDUH
DFRQGLWLRQELWLVVHW7KH+/DQG%&%\WH&RXQWHUUHJLVWHUSDLUVDUH
GHFUHPHQWHG,IGHFUHPHQWLQJFDXVHVWKH%&WRJRWR]HURRULI$ +/
WKHLQVWUXFWLRQLVWHUPLQDWHG,I%&LVQRW]HURDQG$ +/WKHSURJUDP
FRXQWHULVGHFUHPHQWHGE\WZRDQGWKHLQVWUXFWLRQLVUHSHDWHG,QWHUUXSWVDUH
UHFRJQL]HGDQGWZRUHIUHVKF\FOHVH[HFXWHDIWHUHDFKGDWDWUDQVIHU:KHQ
%&LVVHWWR]HURSULRUWRLQVWUXFWLRQH[HFXWLRQWKHLQVWUXFWLRQORRSV
WKURXJK.E\WHVLIQRPDWFKLVIRXQG
)RU%&DQG$+/
0&\FOHV 76WDWHV 0+](7
5 21 (4, 4, 3, 5, 5) 5.25
)RU%& DQG$ +/
0&\FOHV 76WDWHV 0+](7
4 16 (4, 4, 3, 5) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLI$ +/UHVHWRWKHUZLVH
+LVVHWLIERUURZIRUPELWUHVHWRWKHUZLVH
39LVVHWLI%&UHVHWRWKHUZLVH
1LVVHW
&LVQRWDIIHFWHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV1118HWKH$FFXPXODWRUFRQWDLQVF3HWKH
%\WH&RXQWHUFRQWDLQV0007HDQGPHPRU\ORFDWLRQVKDYHWKHVHFRQWHQWV
1118HFRQWDLQV52H
1117HFRQWDLQV00H
1116HFRQWDLQVF3H
7KHQDWH[HFXWLRQRI CPDR WKHFRQWHQWVRIUHJLVWHUSDLU+/DUH1115H
WKHFRQWHQWVRIWKH%\WH&RXQWHUDUH0004HWKH39IODJLQWKH)UHJLVWHU
VHWVDQGWKH=IODJLQWKH)UHJLVWHUVHWV
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%LW$ULWKPHWLF*URXS
$''$U
1RGTCVKQP $$U
1R%QFG $''
1RGTCPFU $U
1 0 0 0 0 r
&GUETKRVKQP 7KHFRQWHQWVRIUHJLVWHUUDUHDGGHGWRWKHFRQWHQWVRIWKH$FFXPXODWRUDQG
WKHUHVXOWLVVWRUHGLQWKH$FFXPXODWRU7KHV\PEROULGHQWLILHVWKHUHJLVWHUV
$%&'(+RU/DVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
5HJLVWHU U
A 111
B 000
C 001
D 010
E 011
H 100
L 101
0&\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDUH44HDQGWKHFRQWHQWVRIUHJLVWHU&
DUH11HDWH[HFXWLRQRI ADD A,C WKHFRQWHQWVRIWKH$FFXPXODWRUDUH
55H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
$''$Q
1RGTCVKQP $$Q
1R%QFG $''
1RGTCPFU $Q
1 1 0 0 0 1 1 0 C6
&GUETKRVKQP 7KHLQWHJHUQLVDGGHGWRWKHFRQWHQWVRIWKH$FFXPXODWRUDQGWKHUHVXOWV
DUHVWRUHGLQWKH$FFXPXODWRU
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
$''$+/
1RGTCVKQP $$+/
1R%QFG $''
1RGTCPFU $+/
1 0 0 0 0 1 1 0 86
&GUETKRVKQP 7KHE\WHDWWKHPHPRU\DGGUHVVVSHFLILHGE\WKHFRQWHQWVRIWKH+/UHJLVWHU
SDLULVDGGHGWRWKHFRQWHQWVRIWKH$FFXPXODWRUDQGWKHUHVXOWLVVWRUHGLQ
WKH$FFXPXODWRU
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDUHA0HDQGWKHFRQWHQWRIWKHUHJLVWHU
SDLU+/LV2323HDQGPHPRU\ORFDWLRQ2323HFRQWDLQVE\WH08HDW
H[HFXWLRQRIADDA(HL) WKH$FFXPXODWRUFRQWDLQVA8H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
$''$,;G
1RGTCVKQP $$,;G
1R%QFG $''
1 0 0 0 0 1 1 0 86
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
'ZCORNG ,IWKH$FFXPXODWRUFRQWHQWVDUH11HWKH,QGH[5HJLVWHU,;FRQWDLQV
+DQGLIWKHFRQWHQWVRIPHPRU\ORFDWLRQ1005HLV22HDWH[HFXWLRQ
RIADDA(IX + 5H) WKHFRQWHQWVRIWKH$FFXPXODWRUDUH33H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
$''$,<G
1RGTCVKQP $$,'G
1R%QFG $''
1 0 0 0 0 1 1 0 86
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
'ZCORNG ,IWKH$FFXPXODWRUFRQWHQWVDUH+WKH,QGH[5HJLVWHU3DLU,<FRQWDLQV
1000HDQGLIWKHFRQWHQWRIPHPRU\ORFDWLRQ1005HLV22HDWH[HFXWLRQ
RI ADD A, (IY + 5H) WKHFRQWHQWVRIWKH$FFXPXODWRUDUH33H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
$'&$V
1RGTCVKQP $$V&<
1R%QFG $'&
1RGTCPFU $V
7KLVVRSHUDQGLVDQ\RIUQ+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV$''LQVWUXFWLRQ7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHDVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
ADC A,r 1 0 0 0 1 r*
ADC A,n 1 1 0 0 1 1 1 0 CE
ADC A, (HL) 1 0 0 0 1 1 1 0 8E
ADC A, (IX+d) 1 1 0 1 1 1 1 0 DD
1 0 0 0 1 1 1 0 8E
ADC A, (IY+d) 1 1 1 1 1 1 0 1 FD
1 0 0 0 1 1 1 0 8E
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
'ZCORNG ,IWKH$FFXPXODWRUFRQWHQWVDUH+WKH&DUU\)ODJLVVHWWKH+/UHJLVWHU
SDLUFRQWDLQV6666HDQGDGGUHVV6666HFRQWDLQV10HDWH[HFXWLRQRI
ADCA,(HL) WKH$FFXPXODWRUFRQWDLQV27H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
68%V
1RGTCVKQP $$V
1R%QFG 68%
1RGTCPFU V
7KLVVRSHUDQGLVDQ\RIUQ+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV$''LQVWUXFWLRQ7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHDVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
SUB r 1 0 0 1 0 r*
SUB n 1 1 0 1 0 1 1 0 D6
SUB (HL) 1 0 0 1 0 1 1 0 96
SUB (IX+d) 1 1 0 1 1 1 0 1 DD
1 0 0 1 0 1 1 0 96
SUB (IY+d) 1 1 1 1 1 1 0 1 FD
1 0 0 1 0 1 1 0 96
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
&GUETKRVKQP 7KHVRSHUDQGLVVXEWUDFWHGIURPWKHFRQWHQWVRIWKH$FFXPXODWRUDQGWKH
UHVXOWLVVWRUHGLQWKH$FFXPXODWRU
,QVWUXFWLRQ 0&\FOH 76WDWHV 0+](7
SUB r 1 4 1.00
SUB n 2 7 (4, 3) 1.75
SUB (HL) 2 7 (4, 3) 1.75
SUB (IX+d) 5 19 (4, 4, 3, 5, 3) 4.75
SUB (lY+d) 5 19 (4, 4, 3, 5, 3) 4.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIERUURZIURPELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVVHW
&LVVHWLIERUURZUHVHWRWKHUZLVH
'ZCORNG ,IWKH$FFXPXODWRUFRQWHQWVDUH29HDQGUHJLVWHU'FRQWDLQV11HDW
H[HFXWLRQRI SUB D WKH$FFXPXODWRUFRQWDLQV18H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
6%&$V
1RGTCVKQP $$V&<
1R%QFG 6%&
1RGTCPFU $V
7KHVRSHUDQGLVDQ\RIUQ+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV$''LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHDVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
SBC A, r 1 0 0 1 1 r*
SBC A, n 1 1 0 1 1 1 1 0 DE
SBC A, (HL) 1 0 0 1 1 1 1 0 9E
SBC A, (IX+d) 1 1 0 1 1 1 0 1 DD
1 0 0 1 1 1 1 0 9E
SBC A, (IY+d) 1 1 1 1 1 1 0 1 FD
1 0 0 1 1 1 1 0 9E
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIERUURZIURPELWUHVHWRWKHUZLVH
39LVUHVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVVHW
&LVVHWLIERUURZUHVHWRWKHUZLVH
'ZCORNG ,IWKH$FFXPXODWRUFRQWDLQV16HWKHFDUU\IODJLVVHWWKH+/UHJLVWHUSDLU
FRQWDLQV3433HDQGDGGUHVV3433HFRQWDLQV05HDWH[HFXWLRQRI
SBC A, (HL) WKH$FFXPXODWRUFRQWDLQV10H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
$1'V
1RGTCVKQP $$¾V
1R%QFG $1'
1RGTCPFU V
7KHVRSHUDQGLVDQ\RIUQ+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV$''LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHDVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
AND r* 1 0 1 0 0 r*
AND n 1 1 1 0 0 1 1 0 E6
AND (HL) 1 0 1 0 0 1 1 0 A6
AND (IX+d) 1 1 0 1 1 1 0 1 DD
1 0 1 0 0 1 1 0 A6
AND (IY+d) 1 1 1 1 1 1 0 1 FD
1 0 1 0 0 1 1 0 A6
ULGHQWLILHVUHJLVWHUV%&'(+/RU$VSHFLILHGDVIROORZVLQWKH
DVVHPEOHGREMHFWFRGHILHOGDERYH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
&GUETKRVKQP $ORJLFDO$1'RSHUDWLRQLVSHUIRUPHGEHWZHHQWKHE\WHVSHFLILHGE\WKHV
RSHUDQGDQGWKHE\WHFRQWDLQHGLQWKH$FFXPXODWRUWKHUHVXOWLVVWRUHGLQ
WKH$FFXPXODWRU
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
AND r 1 4 1.00
AND n 2 7 (4, 3) 1.75
AND (HL) 2 7 (4, 3) 1.75
AND (IX+d) 5 19 (4, 4, 3, 5, 3) 4.75
AND (IX+d) 5 19 (4, 4, 3. 5, 3) 4.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHW
39LVUHVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVUHVHW
&LVUHVHW
'ZCORNG ,IWKH%UHJLVWHUFRQWDLQV7BH01111011DQGWKH$FFXPXODWRUFRQWDLQV
C3H11000011DWH[HFXWLRQRI AND B WKH$FFXPXODWRUFRQWDLQV43H
01000011
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
25V
1RGTCVKQP $$¿V
1R%QFG 25
1RGTCPFU V
7KHVRSHUDQGLVDQ\RIUQ+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV$''LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHDVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
OR r* 1 0 1 1 0 r*
OR n 1 1 1 1 0 1 1 0 F6
OR (HL) 1 0 1 1 0 1 1 0 B6
OR (IX+d) 1 1 0 1 1 1 0 1 DD
1 0 1 1 0 1 1 0 B6
OR (IY+d) 1 1 1 1 1 1 0 1 FD
1 0 1 1 0 1 1 0 B6
ULGHQWLILHVUHJLVWHUV%&'(+/RU$VSHFLILHGDVIROORZVLQWKH
DVVHPEOHGREMHFWFRGHILHOGDERYH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
&GUETKRVKQP $ORJLFDO25RSHUDWLRQLVSHUIRUPHGEHWZHHQWKHE\WHVSHFLILHGE\WKHV
RSHUDQGDQGWKHE\WHFRQWDLQHGLQWKH$FFXPXODWRUWKHUHVXOWLVVWRUHGLQ
WKH$FFXPXODWRU
,QVWUXFWLRQ 0F\FOHV 76WDWHV 0+](7
OR r 1 4 1.00
OR n 2 7 (4, 3) 1.75
OR (HL) 2 7 (4, 3) 1.75
OR (IX+d) 5 19 (4, 4, 3, 5, 3) 4.75
OR (lY+d) 5 19 (4, 4, 3, 5, 3) 4.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVUHVHW
&LVUHVHW
'ZCORNG ,IWKH+UHJLVWHUFRQWDLQV48H01000100DQGWKH$FFXPXODWRUFRQWDLQV
12H00010010DWH[HFXWLRQRI OR H WKH$FFXPXODWRUFRQWDLQV5AH
01011010
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
;25V
1RGTCVKQP $$ªV
1R%QFG ;25
1RGTCPFU V
7KHVRSHUDQGLVDQ\RIUQ+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV$''LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHDVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
OR r* 1 0 1 1 0 r*
OR n 1 1 1 1 0 1 1 0 F6
OR (HL) 1 0 1 1 0 1 1 0 B6
OR (IX+d) 1 1 0 1 1 1 0 1 DD
1 0 1 1 0 1 1 0 B6
OR (IY+d) 1 1 1 1 1 1 0 1 FD
1 0 1 1 0 1 1 0 B6
ULGHQWLILHVUHJLVWHUV%&'(+/RU$VSHFLILHGDVIROORZVLQWKH
DVVHPEOHGREMHFWFRGHILHOGDERYH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 1l1
&GUETKRVKQP 7KHORJLFDOH[FOXVLYH25RSHUDWLRQLVSHUIRUPHGEHWZHHQWKHE\WH
VSHFLILHGE\WKHVRSHUDQGDQGWKHE\WHFRQWDLQHGLQWKH$FFXPXODWRUWKH
UHVXOWLVVWRUHGLQWKH$FFXPXODWRU
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
XOR r 1 4 1.00
XOR n 2 7 (4, 3) 1.75
XOR (HL) 2 7 (4, 3) 1.75
XOR (IX+d) 5 19 (4, 4, 3, 5, 3) 4.75
XOR (lY+d) 5 19 (4, 4, 3, 5, 3) 4.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\HYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVUHVHW
'ZCORNG ,IWKH$FFXPXODWRUFRQWDLQV96H10010110DWH[HFXWLRQRI XOR 5DH
5DH 01011101WKH$FFXPXODWRUFRQWDLQVCBH11001011
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&3V
1RGTCVKQP $V
1R%QFG &3
1RGTCPFU V
7KHVRSHUDQGLVDQ\RIUQ+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV$''LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHDVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
CP r* 1 0 1 1 1 r*
CP n 1 1 1 1 1 1 1 0 FE
CP (HL) 1 0 1 1 1 1 1 0 BE
CP (IX+d) 1 1 0 1 1 1 0 1 DD
1 0 1 1 1 1 1 0 BE
CP (IY+d) 1 1 1 1 1 1 0 1 FD
1 0 1 1 1 1 1 0 BE
ULGHQWLILHVUHJLVWHUV%&'(+/RU$VSHFLILHGDVIROORZVLQWKH
DVVHPEOHGREMHFWFRGHILHOGDERYH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
&GUETKRVKQP 7KHFRQWHQWVRIWKHVRSHUDQGDUHFRPSDUHGZLWKWKHFRQWHQWVRIWKH
$FFXPXODWRU,IWKHUHLVDWUXHFRPSDUHWKH=IODJLVVHW7KHH[HFXWLRQRI
WKLVLQVWUXFWLRQGRHVQRWDIIHFWWKHFRQWHQWVRIWKH$FFXPXODWRU
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
CP r 1 4 1.00
CP n 2 7(4, 3) 1.75
CP (HL) 2 7 (4, 3) 1.75
CP (IX+d) 5 19 (4, 4, 3, 5, 3) 4.75
CP (lY+d) 5 19 (4, 4, 3, 5, 3) 4.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIERUURZIURPELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVVHW
&LVVHWLIERUURZUHVHWRWKHUZLVH
'ZCORNG ,IWKH$FFXPXODWRUFRQWDLQV63HWKH+/UHJLVWHUSDLUFRQWDLQV6000HDQG
PHPRU\ORFDWLRQ6000HFRQWDLQV60HWKHLQVWUXFWLRQ CP(HL) UHVXOWVLQ
WKH31IODJLQWKH)UHJLVWHUUHVHWWLQJ
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1&U
1RGTCVKQP UU
1R%QFG ,1&
1RGTCPFU U
0 0 r 1 0 0
&GUETKRVKQP 5HJLVWHUULVLQFUHPHQWHGDQGUHJLVWHUULGHQWLILHVDQ\RIWKHUHJLVWHUV$%
&'(+RU/DVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
5HJLVWHU U
A 111
B 000
C 001
D 010
E 011
H 100
L 101
0&\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLIUZDV)+EHIRUHRSHUDWLRQUHVHWRWKHUZLVH
1LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU'DUH28HDWH[HFXWLRQRI INCD WKHFRQWHQWVRI
UHJLVWHU'DUH29H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1&+/
1RGTCVKQP +/+/
1R%QFG ,1&
1RGTCPFU +/
0 0 1 1 0 1 0 0 34
&GUETKRVKQP 7KHE\WHFRQWDLQHGLQWKHDGGUHVVVSHFLILHGE\WKHFRQWHQWVRIWKH+/
UHJLVWHUSDLULVLQFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
3 11 (4, 4, 3) 2.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLI+/ZDV)+EHIRUHRSHUDWLRQUHVHWRWKHUZLVH
1LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUH3434HDQGWKHFRQWHQWVRI
DGGUHVV3434HDUH82HDWH[HFXWLRQ ofINC(HL)PHPRU\ORFDWLRQ
3434HFRQWDLQV83H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1&,;G
1RGTCVKQP ,;G,;G
1R%QFG ,1&
1RGTCPFU ,;G
1 1 0 1 1 1 0 1 DD
0 0 1 1 0 1 0 0 34
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLI,;GZDV)+EHIRUHRSHUDWLRQUHVHWRWKHUZLVH
1LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIWKH,QGH[5HJLVWHUSDLU,;DUH2020HDQGWKHPHPRU\
ORFDWLRQ2030HFRQWDLQVE\WH34HDWH[HFXWLRQRIINC(IX+10H) WKH
FRQWHQWVRIPHPRU\ORFDWLRQ2030HLV35H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1&,<G
1RGTCVKQP O<GO<G
1R%QFG ,1&
1RGTCPFU O<G
1 1 1 1 1 1 0 1 FD
0 0 1 1 0 1 0 0 34
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
39LVVHWLIO<GZDV)+EHIRUHRSHUDWLRQUHVHWRWKHUZLVH
1LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIWKH,QGH[5HJLVWHUSDLU,<DUH2020HDQGWKHPHPRU\
ORFDWLRQ2030HFRQWDLQE\WH34HDWH[HFXWLRQRIINC(IY+10H) WKH
FRQWHQWVRIPHPRU\ORFDWLRQ2030HDUH35H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'(&P
1RGTCVKQP PP
1R%QFG '(&
1RGTCPFU P
7KHPRSHUDQGLVDQ\RIU+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV,1&LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHDVVHPEOHGDVIROORZVLQWKHREMHFWFRGH
DEC r* 0 0 r 1 0 1
DEC (HL) 0 0 1 1 0 1 0 1 35
DEC (IX+d) 1 1 0 1 1 1 0 1 DD
0 0 1 1 0 1 0 1 35
DEC (IY+d) 1 1 1 1 1 1 0 1 FD
0 0 1 1 0 1 0 1 35
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&GUETKRVKQP 7KHE\WHVSHFLILHGE\WKHPRSHUDQGLVGHFUHPHQWHG
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
DEC r 1 4 1.00
DEC (HL) 3 11 (4, 4, 3) 2.75
DEC (IX+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
DEC (lY+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIERUURZIURPELWUHVHWRWKHUZLVH
39LVVHWLIPZDV+EHIRUHRSHUDWLRQUHVHWRWKHUZLVH
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKH'UHJLVWHUFRQWDLQVE\WH$+DWH[HFXWLRQRI DEC D UHJLVWHU'
FRQWDLQV+
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
*HQHUDO3XUSRVH$ULWKPHWLFDQG&38&RQWURO
*URXSV
'$$
1RGTCVKQP
1R%QFG '$$
0 0 1 0 0 1 1 1 27
&GUETKRVKQP 7KLVLQVWUXFWLRQFRQGLWLRQDOO\DGMXVWVWKH$FFXPXODWRUIRU%&'DGGLWLRQDQG
VXEWUDFWLRQRSHUDWLRQV)RUDGGLWLRQADDADCINCRUVXEWUDFWLRQSUB
SBCDECNEGWKHIROORZLQJWDEOHLQGLFDWHVWKHRSHUDWLRQSHUIRUPHG
+H[9DOXH
+H[9DOXH,Q ,Q/RZHU 1XPEHU
&%HIRUH 8SSHU'LJLW +%HIRUH 'LJLW $GGHG7R &$IWHU
2SHUDWLRQ '$$ ELW '$$ ELW %\WH '$$
0 9-0 0 0-9 00 0
0 0-8 0 A-F 06 0
0 0-9 1 0-3 06 0
ADD 0 A-F 0 0-9 60 1
ADC 0 9-F 0 A-F 66 1
INC 0 A-F 1 0-3 66 1
1 0-2 0 0-9 60 1
1 0-2 0 A-F 66 1
1 0-3 1 0-3 66 1
SUB 0 0-9 0 0-9 00 0
SBC 0 0-8 1 6-F FA 0
DEC 1 7-F 0 0-9 A0 1
NEG 1 6-7 1 6-F 9A 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIPRVWVLJQLILFDQWELWRI$FFXPXODWRULVDIWHURSHUDWLRQUHVHW
RWKHUZLVH
=LVVHWLI$FFXPXODWRULV]HURDIWHURSHUDWLRQUHVHWRWKHUZLVH
+VHHLQVWUXFWLRQ
39LVVHWLI$FFXPXODWRULVHYHQSDULW\DIWHURSHUDWLRQUHVHWRWKHUZLVH
1LVQRWDIIHFWHG
&VHHLQVWUXFWLRQ
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&3/
1RGTCVKQP $$
1R%QFG &3/
0 0 1 0 1 1 1 1 2F
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVVHW
39LVQRWDIIHFWHG
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDUH10110100DWH[HFXWLRQRI CPL
WKH$FFXPXODWRUFRQWHQWVDUH01001011
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1(*
1RGTCVKQP $$
1R%QFG 1(*
1 1 1 0 1 1 0 1 ED
0 1 0 0 0 1 0 0 44
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIERUURZIURPELWUHVHWRWKHUZLVH
39LVVHWLI$FFXPXODWRUZDV+EHIRUHRSHUDWLRQUHVHWRWKHUZLVH
1LVVHW
&LVVHWLI$FFXPXODWRUZDVQRW+EHIRUHRSHUDWLRQUHVHWRWKHUZLVH
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDUH
1 0 0 1 1 0 0 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&&)
1RGTCVKQP &<&<
1R%QFG &&)
0 0 1 1 1 1 1 1 3F
&GUETKRVKQP 7KH&DUU\IODJLQWKH)UHJLVWHULVLQYHUWHG
0&\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+SUHYLRXVFDUU\LVFRSLHG
39LVQRWDIIHFWHG
1LVUHVHW
&LVVHWLI&<ZDVEHIRUHRSHUDWLRQUHVHWRWKHUZLVH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
6&)
1RGTCVKQP &<
1R%QFG 6&)
0 0 1 1 0 1 1 1 37
&GUETKRVKQP 7KH&DUU\IODJLQWKH)UHJLVWHULVVHW
0&\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVUHVHW
39LVQRWDIIHFWHG
1LVUHVHW
&LVVHW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
123
1RGTCVKQP ²
1R%QFG 123
0 0 0 0 0 0 0 0 00
&GUETKRVKQP 7KH&38SHUIRUPVQRRSHUDWLRQGXULQJWKLVPDFKLQHF\FOH
0&\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
+$/7
1RGTCVKQP ²
1R%QFG +$/7
0 1 1 1 0 1 1 0 76
&GUETKRVKQP 7KH+$/7LQVWUXFWLRQVXVSHQGV&38RSHUDWLRQXQWLODVXEVHTXHQWLQWHUUXSW
RUUHVHWLVUHFHLYHG:KLOHLQWKH+$/7VWDWHWKHSURFHVVRUH[HFXWHV123V
WRPDLQWDLQPHPRU\UHIUHVKORJLF
0&\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
',
1RGTCVKQP ,))
1R%QFG ',
1 1 1 1 0 0 1 1 F3
&GUETKRVKQP ',GLVDEOHVWKHPDVNDEOHLQWHUUXSWE\UHVHWWLQJWKHLQWHUUXSWHQDEOHIOLS
IORSV,))DQG,))1RWHWKDWWKLVLQVWUXFWLRQGLVDEOHVWKHPDVNDEOH
LQWHUUXSWGXULQJLWVH[HFXWLRQ
0F\FOHV 76WDWHV 0+](7
1 4 1.00
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
(,
1RGTCVKQP ,))
1R%QFG (,
1 1 1 1 1 0 1 1 FB
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,0
1RGTCVKQP ²
1R%QFG ,0
1RGTCPFU
1 1 1 0 1 1 0 1 ED
0 1 0 1 0 1 1 0 56
&GUETKRVKQP 7KH,0LQVWUXFWLRQVHWVLQWHUUXSWPRGH,QWKLVPRGHWKHLQWHUUXSWLQJ
GHYLFHFDQLQVHUWDQ\LQVWUXFWLRQRQWKHGDWDEXVIRUH[HFXWLRQE\WKH
&387KHILUVWE\WHRIDPXOWLE\WHLQVWUXFWLRQLVUHDGGXULQJWKHLQWHUUXSW
DFNQRZOHGJHF\FOH6XEVHTXHQWE\WHVDUHUHDGLQE\DQRUPDOPHPRU\
UHDGVHTXHQFH
0&\FOHV 76WDWHV 0+](7
2 8 (4, 4) 2.00
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,0
1RGTCVKQP ²
1R%QFG ,0
1RGTCPFU
1 1 1 0 1 1 0 1 ED
0 1 0 1 0 1 1 0 56
&GUETKRVKQP 7KH,0LQVWUXFWLRQVHWVLQWHUUXSWPRGH,QWKLVPRGHWKHSURFHVVRU
UHVSRQGVWRDQLQWHUUXSWE\H[HFXWLQJDUHVWDUWWRORFDWLRQ+
0&\FOHV 76WDWHV 0+](7
2 8 (4, 4) 2.00
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,0
1RGTCVKQP ²
1R%QFG ,0
1RGTCPFU
1 1 1 0 1 1 0 1 ED
0 1 0 1 0 1 1 0 56
&GUETKRVKQP 7KH,0LQVWUXFWLRQVHWVWKHYHFWRUHGLQWHUUXSWPRGH7KLVPRGHDOORZV
DQLQGLUHFWFDOOWRDQ\PHPRU\ORFDWLRQE\DQELWYHFWRUVXSSOLHGIURPWKH
SHULSKHUDOGHYLFH7KLVYHFWRUWKHQEHFRPHVWKHOHDVWVLJQLILFDQWHLJKWELWV
RIWKHLQGLUHFWSRLQWHUZKLOHWKH,UHJLVWHULQWKH&38SURYLGHVWKHPRVW
VLJQLILFDQWHLJKWELWV7KLVDGGUHVVSRLQWVWRDQDGGUHVVLQDYHFWRUWDEOHWKDW
LVWKHVWDUWLQJDGGUHVVIRUWKHLQWHUUXSWVHUYLFHURXWLQH
0&\FOHV 76WDWHV 0+](7
2 8 (4, 4) 2.00
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%LW$ULWKPHWLF*URXS
$''+/VV
1RGTCVKQP +/+/VV
1R%QFG $''
1RGTCPFU +/VV
0 0 s s 1 0 0 1
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVVHWLIFDUU\RXWRIELWUHVHWRWKHUZLVH
39LVQRWDIIHFWHG
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
'ZCORNG ,IUHJLVWHUSDLU+/FRQWDLQVWKHLQWHJHU4242HDQGUHJLVWHUSDLU'(FRQWDLQV
1111HDWH[HFXWLRQRI ADD HL, DE WKH+/UHJLVWHUSDLUFRQWDLQV5353H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
$'&+/VV
1RGTCVKQP +/+/VV&<
1R%QFG $'&
1RGTCPFU +/VV
1 1 1 0 1 1 0 1 ED
0 1 s s 1 0 1 0
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
5LVVHWLIFDUU\RXWRIELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
'ZCORNG ,IWKHUHJLVWHUSDLU%&FRQWDLQV2222HUHJLVWHUSDLU+/FRQWDLQV5437H
DQGWKH&DUU\)ODJLVVHWDWH[HFXWLRQRI ADC HL, BC WKHFRQWHQWVRI
+/DUH765AH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
6%&+/VV
1RGTCVKQP +/+,VV&<
1R%QFG 6%&
1RGTCPFU +/VV
1 1 1 0 1 1 0 1 ED
0 1 s s 0 0 1 0
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVVHWLIDERUURZIURPELWUHVHWRWKHUZLVH
39LVVHWLIRYHUIORZUHVHWRWKHUZLVH
1LVVHW
&LVVHWLIERUURZUHVHWRWKHUZLVH
'ZCORNG ,IWKHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUH9999HWKHFRQWHQWVRIUHJLVWHU
SDLU'(DUH1111HDQGWKH&DUU\IODJLVVHW$WH[HFXWLRQRI SBC HL, DE
WKHFRQWHQWVRI+/DUH8887H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
$'',;SS
1RGTCVKQP ,;,;SS
1R%QFG $''
1RGTCPFU ,;SS
1 1 0 1 1 1 0 1 DD
0 1 p p 1 0 0 1
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVVHWLIFDUU\RXWRIELWUHVHWRWKHUZLVH
39LVQRWDIIHFWHG
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
'ZCORNG ,IWKHFRQWHQWVRI,QGH[5HJLVWHU,;DUH333HDQGWKHFRQWHQWVRIUHJLVWHUSDLU
%&DUH5555HDWH[HFXWLRQRI ADD IX, BC WKHFRQWHQWVRI,;DUH8888H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
$'',<UU
1RGTCVKQP ,<,<UU
1R%QFG $''
1RGTCPFU ,<UU
1 1 1 1 1 1 0 1 FD
0 0 r r 1 0 0 1
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVVHWLIFDUU\RXWRIELWUHVHWRWKHUZLVH
39LVQRWDIIHFWHG
1LVUHVHW
&LVVHWLIFDUU\IURPELWUHVHWRWKHUZLVH
'ZCORNG ,IWKHFRQWHQWVRI,QGH[5HJLVWHU,<DUH333HDQGWKHFRQWHQWVRIUHJLVWHUSDLU
%&DUH555HDWH[HFXWLRQRI ADD IY, BC WKHFRQWHQWVRI,<DUH8888H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1&VV
1RGTCVKQP VVVV
1R%QFG ,1&
1RGTCPFU VV
0 0 s s 0 0 1 1
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1&,;
1RGTCVKQP ,;,;
1R%QFG ,1&
1RGTCPFU ,;
1 1 0 1 1 1 0 1 DD
0 0 1 0 0 0 1 1 23
&GUETKRVKQP 7KHFRQWHQWVRIWKH,QGH[5HJLVWHU,;DUHLQFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
2 10 (4, 6) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH,QGH[5HJLVWHU,;FRQWDLQVWKHLQWHJHU3300HDWH[HFXWLRQRI
INC IX WKHFRQWHQWVRI,QGH[5HJLVWHU,;DUH3301H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1&,<
1RGTCVKQP ,<,<
1R%QFG ,1&
1RGTCPFU ,<
1 1 1 1 1 1 0 1 FD
0 0 1 0 0 0 1 1 23
&GUETKRVKQP 7KHFRQWHQWVRIWKH,QGH[5HJLVWHU,<DUHLQFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
2 10 (4, 6) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'(&VV
1RGTCVKQP VVVV
1R%QFG '(&
1RGTCPFU VV
0 0 s s 1 0 1 1
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'(&,;
1RGTCVKQP ,;,;
1R%QFG '(&
1RGTCPFU ,;
1 1 0 1 1 1 0 1 DD
0 0 1 0 1 0 1 1 2B
&GUETKRVKQP 7KHFRQWHQWVRI,QGH[5HJLVWHU,;DUHGHFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
2 10 (4, 6) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'(&,<
1RGTCVKQP ,<,<
1R%QFG '(&
1RGTCPFU ,<
1 1 1 1 1 1 0 1 FD
0 0 1 0 1 0 1 1 2B
&GUETKRVKQP 7KHFRQWHQWVRIWKH,QGH[5HJLVWHU,<DUHGHFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
2 10 (4, 6) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5RWDWHDQG6KLIW*URXS
5/&$
1RGTCVKQP
CY 7 0
A
1R%QFG 5/&$
1RGTCPFU ²
0 0 0 0 0 1 1 1 07
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVUHVHW
39LVQRWDIIHFWHG
1LVUHVHW
&LVGDWDIURPELWRI$FFXPXODWRU
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDUH
7 6 5 4 3 2 1 0
1 0 0 0 1 0 0 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5/$
1RGTCVKQP
7 0 CY
A
1R%QFG 5/$
1RGTCPFU ²
0 0 0 1 0 1 1 1 17
%QPFKVKQP$KVU#HHGEVGF&RQGLWLRQ%LWV$IIHFWHG
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVUHVHW
39LVQRWDIIHFWHG
1LVUHVHW
&LVGDWDIURPELWRI$FFXPXODWRU
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDQGWKH&DUU\IODJDUH
C 7 6 5 4 3 2 1 0
1 0 1 1 1 0 1 1 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
55&$
1RGTCVKQP
7 0 CY
A
1R%QFG 55&$
1RGTCPFU ²
0 0 0 0 1 1 1 1 0F
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVUHVHW
39LVQRWDIIHFWHG
1LVUHVHW
&LVGDWDIURPELWRI$FFXPXODWRU
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDUH
7 6 5 4 3 2 1 0
0 0 0 1 0 0 0 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
55$
1RGTCVKQP
7 0 CY
A
1R%QFG 55$
1RGTCPFU ²
0 0 0 1 1 1 1 1 1F
%QPFKVKQP$KVU#HHGEVGF
6LVQRWDIIHFWHG
=LVQRWDIIHFWHG
+LVUHVHW
39LVQRWDIIHFWHG
1LVUHVHW
&LVGDWDIURPELWRI$FFXPXODWRU
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDQGWKH&DUU\)ODJDUH
7 6 5 4 3 2 1 0 C
1 1 1 0 0 0 0 1 0
0 1 1 1 0 0 0 0 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5/&U
1RGTCVKQP
CY 7 0
r
1R%QFG 5/&
1RGTCPFU U
1 1 0 0 1 0 1 1 CB
0 0 0 0 0 r
&GUETKRVKQP 7KHFRQWHQWVRIUHJLVWHUUDUHURWDWHGOHIWELWSRVLWLRQ7KHFRQWHQWRIELW
LVFRSLHGWRWKH&DUU\IODJDQGDOVRWRELW2SHUDQGULVVSHFLILHGDV
IROORZVLQWKHDVVHPEOHGREMHFWFRGH
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
0&\FOHV 76WDWHV 0+](7
2 8 (4, 4) 2.00
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\HYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELWRIVRXUFHUHJLVWHU
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHUUDUH
7 6 5 4 3 2 1 0
1 0 0 0 1 0 0 0
C 7 6 5 4 3 2 1 0
1 0 0 0 1 0 0 0 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5/&+/
1RGTCVKQP
CY 7 0
(HL)
1R%QFG 5/&
1RGTCPFU +/
1 1 0 0 1 0 1 1 CB
0 0 0 0 0 1 1 0 06
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\DGGUHVVVSHFLILHGE\WKHFRQWHQWVRIUHJLVWHU
SDLU+/DUHURWDWHGOHIWELWSRVLWLRQ7KHFRQWHQWRIELWLVFRSLHGWRWKH
&DUU\IODJDQGDOVRWRELW%LWLVWKHOHDVWVLJQLILFDQWELW
0&\FOHV 76WDWHV 0+](7
4 15 (4, 4, 4, 3) 3.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\HYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELWRIVRXUFHUHJLVWHU
'ZCORNG ,IWKHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUH2828HDQGWKHFRQWHQWVRI
PHPRU\ORFDWLRQ2828HDUH
7 6 5 4 3 2 1 0
1 0 0 0 1 0 0 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5/&,;G
1RGTCVKQP
CY 7 0
(IX+d)
1R%QFG 5/&
1RGTCPFU ,;G
1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
0 0 0 0 0 1 1 0 06
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\DGGUHVVVSHFLILHGE\WKHVXPRIWKHFRQWHQWVRI
WKH,QGH[5HJLVWHU,;DQGDWZR¶VFRPSOHPHQWGLVSODFHPHQWLQWHJHUGDUH
URWDWHGOHIWELWSRVLWLRQ7KHFRQWHQWRIELWLVFRSLHGWRWKH&DUU\IODJ
DQGDOVRWRELW%LWLVWKHOHDVWVLJQLILFDQWELW
0&\FOHV 76WDWHV 0+](7
6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\HYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELWRIVRXUFHUHJLVWHU
'ZCORNG ,IWKHFRQWHQWVRIWKH,QGH[5HJLVWHU,;DUH1000HDQGWKHFRQWHQWVRI
PHPRU\ORFDWLRQ1022HDUH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
7 6 5 4 3 2 1 0
1 0 0 0 1 0 0 0
C 7 6 5 4 3 2 1 0
1 0 0 0 1 0 0 0 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5/&,<G
1RGTCVKQP
CY 7 0
(IY+d)
1R%QFG 5/&
1RGTCPFU O<G
1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
0 0 0 0 0 1 1 0 06
&GUETKRVKQP 7KHFRQWHQWVRIWKHPHPRU\DGGUHVVVSHFLILHGE\WKHVXPRIWKHFRQWHQWVRI
WKH,QGH[5HJLVWHU,<DQGDWZR¶VFRPSOHPHQWGLVSODFHPHQWLQWHJHUGDUH
URWDWHGOHIWELWSRVLWLRQ7KHFRQWHQWRIELWLVFRSLHGWRWKH&DUU\IODJ
DQGDOVRWRELW%LWLVWKHOHDVWVLJQLILFDQWELW
0&\FOHV 76WDWHV 0+](7
6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\HYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELWRIVRXUFHUHJLVWHU
'ZCORNG ,IWKHFRQWHQWVRIWKH,QGH[5HJLVWHU,<DUH1000HDQGWKHFRQWHQWVRI
PHPRU\ORFDWLRQ1002HDUH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
7 6 5 4 3 2 1 0
1 0 0 0 1 0 0 0
C 7 6 5 4 3 2 1 0
1 0 0 0 1 0 0 0 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5/P
1RGTCVKQP
CY 7 0
m
1R%QFG 3/
1RGTCPFU P
7KHPRSHUDQGLVDQ\RIU+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV3/&LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHVSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
RL r* 1 1 0 0 1 0 1 1 CB
0 0 0 1 0 r*
RL (HL) 1 1 0 0 1 0 1 1 CB
0 0 0 1 0 1 1 0 16
RL (IX+d) 1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
0 0 0 1 0 1 1 0 16
RL (IY+d) 1 1 1 1 1 1 0 1 FB
1 1 0 0 1 0 1 1 CB
0 0 0 1 0 1 1 0 16
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
&GUETKRVKQP 7KHFRQWHQWVRIWKHPRSHUDQGDUHURWDWHGOHIWELWSRVLWLRQ7KHFRQWHQWRI
ELWLVFRSLHGWRWKH&DUU\IODJDQGWKHSUHYLRXVFRQWHQWRIWKH&DUU\IODJLV
FRSLHGWRELW
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
RL r 2 8 (4, 4) 2.00
RL (HL) 4 15(4, 4, 4, 3) 3.75
RL (IX+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
RL (IY+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\HYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELWRIVRXUFHUHJLVWHU
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU'DQGWKH&DUU\IODJDUH
C 7 6 5 4 3 2 1 0
0 1 0 0 0 1 1 1 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
55&P
1RGTCVKQP
7 0 CY
m
1R%QFG 55&
1RGTCPFU P
7KHPRSHUDQGLVDQ\RIU+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV5/&LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHVSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
RRC r* 1 1 0 0 1 0 1 1 CB
0 0 0 0 1 r*
RRC (HL) 1 1 0 0 1 0 1 1 CB
0 0 0 0 1 1 1 0 OE
RRC (IX+d) 1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
0 0 0 0 1 1 1 0 OE
RRC (IY+d) 1 1 1 1 1 1 0 1 FB
1 1 0 0 1 0 1 1 CB
0 0 0 0 1 1 1 0 OE
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
&GUETKRVKQP 7KHFRQWHQWVRIWKHPRSHUDQGDUHURWDWHGULJKWELWSRVLWLRQ7KHFRQWHQW
RIELWLVFRSLHGWRWKH&DUU\IODJDQGDOVRWRELW%LWLVWKHOHDVW
VLJQLILFDQWELW
,QVWUXFWLRQ 0F\FOHV 76WDWHV 0+](7
RRC r 2 8 (4, 4) 2.00
RRC (HL) 4 15 (4, 4, 4, 3) 3.75
RRC (IX+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
RRC (lY+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\HYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELWRIVRXUFHUHJLVWHU
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU$DUH
7 6 5 4 3 2 1 0
0 0 1 1 0 0 0 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
7 6 5 4 3 2 1 0 C
1 0 0 1 1 0 0 0 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
55P
1RGTCVKQP
7 0 CY
m
1R%QFG 55
1RGTCPFU P
7KHPRSHUDQGLVDQ\RIU+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV5/&LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHVSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
RR r* 1 1 0 0 1 0 1 1 CB
0 0 0 0 1 r*
RR (HL) 1 1 0 0 1 0 1 1 CB
0 0 0 0 1 1 1 0 1E
RR (IX+d) 1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
0 0 0 1 1 1 1 0 1E
RR (IY+d) 1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
0 0 0 1 1 1 1 0 1E
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
&GUETKRVKQP 7KHFRQWHQWVRIRSHUDQGPDUHURWDWHGULJKWELWSRVLWLRQWKURXJKWKH&DUU\
IODJ7KHFRQWHQWRIELWLVFRSLHGWRWKH&DUU\IODJDQGWKHSUHYLRXV
FRQWHQWRIWKH&DUU\IODJLVFRSLHGWRELW%LWLVWKHOHDVWVLJQLILFDQWELW
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
RR r 2 8 (4, 4) 2.00
RR (HL) 4 15 (4, 4, 4, 3) 3.75
RR (IX+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
RR (lY+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\HYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELWRIVRXUFHUHJLVWHU
'ZCORNG ,IWKHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUH4343HDQGWKHFRQWHQWVRI
PHPRU\ORFDWLRQ4343HDQGWKH&DUU\IODJDUH
7 6 5 4 3 2 1 0 C
1 1 0 1 1 1 0 1 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
7 6 5 4 3 2 1 0 C
0 1 1 0 1 1 1 0 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
6/$P
1RGTCVKQP
CY 7 0 0
m
1R%QFG 6/$
1RGTCPFU P
7KHPRSHUDQGLVDQ\RIU+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV5/&LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHVSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
SLA r* 1 1 0 0 1 0 1 1 CB
0 0 1 0 0 r*
SLA (HL) 1 1 0 0 1 0 1 1 CB
0 0 1 0 0 1 1 0 26
SLA (IX+d) 1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
0 0 1 0 0 1 1 0 26
SLA (IY+d) 1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
0 0 1 0 0 1 1 0 26
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
&GUETKRVKQP $QDULWKPHWLFVKLIWOHIWELWSRVLWLRQLVSHUIRUPHGRQWKHFRQWHQWVRI
RSHUDQGP7KHFRQWHQWRIELWLVFRSLHGWRWKH&DUU\IODJ%LWLVWKH
OHDVWVLJQLILFDQWELW
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
SLA r 2 8 (4, 4) 2.00
SLA (HL) 4 15 (4, 4, 4, 3) 3.75
SLA (IX+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
SLA (IY+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\LVHYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELW
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU/DUH
7 6 5 4 3 2 1 0
1 0 1 1 0 0 0 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
C 7 6 5 4 3 2 1 0
1 0 1 1 0 0 0 1 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
65$P
1RGTCVKQP
7 0 CY
m
1R%QFG 65$
1RGTCPFU P
7KHPRSHUDQGLVDQ\RIU+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV3/&LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHVSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
SRA r* 1 1 0 0 1 0 1 1 CB
0 0 1 0 0 r*
SRA (HL) 1 1 0 0 1 0 1 1 CB
0 0 1 0 1 1 1 0 2E
SRA (IX+d) 1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
0 0 1 0 1 1 1 0 2E
SRA (IY+d) 1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
0 0 1 0 1 1 1 0 2E
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
5HJLVWHU U
B 000
C 001
D 010
E 011
H 100
L 101
A 111
&GUETKRVKQP $QDULWKPHWLFVKLIWULJKWELWSRVLWLRQLVSHUIRUPHGRQWKHFRQWHQWVRI
RSHUDQGP7KHFRQWHQWRIELWLVFRSLHGWRWKH&DUU\IODJDQGWKHSUHYLRXV
FRQWHQWRIELWLVXQFKDQJHG%LWLVWKHOHDVWVLJQLILFDQWELW
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
SRA r 2 8 (4, 4) 2.00
SRA (HL) 4 15 (4, 4, 4, 3) 3.75
SRA (IX+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
SRA (lY+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLIUHVXOWLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\LVHYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELWRIVRXUFHUHJLVWHU
'ZCORNG ,IWKHFRQWHQWVRIWKH,QGH[5HJLVWHU,;DUH1000HDQGWKHFRQWHQWVRI
PHPRU\ORFDWLRQ1003HDUH
7 6 5 4 3 2 1 0
1 0 1 1 1 0 0 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
7 6 5 4 3 2 1 0 C
1 1 0 1 1 1 0 0 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
65/P
1RGTCVKQP
0 7 0 CY
m
1R%QFG 65/
1RGTCPFU P
7KHRSHUDQGPLVDQ\RIU+/,;GRUO<GDVGHILQHGIRUWKH
DQDORJRXV5/&LQVWUXFWLRQV7KHVHSRVVLEOH2S&RGHRSHUDQG
FRPELQDWLRQVDUHVSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
SRL r* 1 1 0 0 1 0 1 1 CB
0 0 1 1 1 r*
SRL (HL) 1 1 0 0 1 0 1 1 CB
0 0 1 1 1 1 1 0 3E
SRL (IX+d) 1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
0 0 1 1 1 1 1 0 3E
SRL (IY+d) 1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
0 0 1 1 1 1 1 0 3E
ULGHQWLILHVUHJLVWHUV%&'(+/RU$DVVHPEOHGDVIROORZVLQWKH
REMHFWFRGHILHOGDERYH
&GUETKRVKQP 7KHFRQWHQWVRIRSHUDQGPDUHVKLIWHGULJKWELWSRVLWLRQ7KHFRQWHQWRI
ELWLVFRSLHGWRWKH&DUU\IODJDQGELWLVUHVHW%LWLVWKHOHDVW
VLJQLILFDQWELW
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
SRL r 2 8 (4, 4) 2.00
SRL (HL) 4 15 (4, 4, 4, 3) 3.75
SRL (1X+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%QPFKVKQP$KVU#HHGEVGF
6LVUHVHW
=LVVHWLIUHVXOWLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\LVHYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVGDWDIURPELWRIVRXUFHUHJLVWHU
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU%DUH
7 6 5 4 3 2 1 0
1 0 0 0 1 1 1 1
7 6 5 4 3 2 1 0 C
0 1 0 0 0 1 1 1 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5/'
1RGTCVKQP
A 7 4 3 0 7 4 3 0
1R%QFG 5/'
1RGTCPFU ²
1 1 1 0 1 1 0 1 ED
0 1 1 0 1 1 1 1 6F
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLI$FFXPXODWRULVQHJDWLYHDIWHURSHUDWLRQUHVHWRWKHUZLVH
=LVVHWLI$FFXPXODWRULV]HURDIWHURSHUDWLRQUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\RI$FFXPXODWRULVHYHQDIWHURSHUDWLRQUHVHWRWKHUZLVH
1LVUHVHW
&LVQRWDIIHFWHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUH5000HDQGWKHFRQWHQWVRIWKH
$FFXPXODWRUDQGPHPRU\ORFDWLRQ5000HDUH
7 6 5 4 3 2 1 0
0 1 1 1 1 0 1 0 Accumulator
7 6 5 4 3 2 1 0
0 0 1 1 0 0 0 1 (5000H)
7 6 5 4 3 2 1 0
0 1 1 1 0 0 1 1 Accumulator
7 6 5 4 3 2 1 0
0 0 0 1 1 0 1 0 (5000H)
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
55'
1RGTCVKQP
A 7 4 3 0 7 4 3 0 (HL)
1R%QFG 55'
1RGTCPFU ²
1 1 1 0 1 1 0 1 ED
0 1 1 0 0 1 1 1 67
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLI$FFXPXODWRULVQHJDWLYHDIWHURSHUDWLRQUHVHWRWKHUZLVH
=LVVHWLI$FFXPXODWRULV]HURDIWHURSHUDWLRQUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\RI$FFXPXODWRULVHYHQDIWHURSHUDWLRQUHVHWRWKHUZLVH
1LVUHVHW
&LVQRWDIIHFWHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUH5000HDQGWKHFRQWHQWVRIWKH
$FFXPXODWRUDQGPHPRU\ORFDWLRQ5000HDUH
7 6 5 4 3 2 1 0
1 0 0 0 0 1 0 0 Accumulator
7 6 5 4 3 2 1 0
0 0 1 0 0 0 0 0 (5000H)
7 6 5 4 3 2 1 0
1 0 0 0 0 0 0 0 Accumulator
7 6 5 4 3 2 1 0
0 1 0 0 0 0 1 0 (5000H)
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%LW6HW5HVHWDQG7HVW*URXS
%,7EU
1RGTCVKQP =UE
1R%QFG %,7
1RGTCPFU EU
1 1 0 0 1 0 1 1 CB
0 1 b r
&GUETKRVKQP 7KLVLQVWUXFWLRQWHVWVELWELQUHJLVWHUUDQGVHWVWKH=IODJDFFRUGLQJO\
2SHUDQGVEDQGUDUHVSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
%LW7HVWHG E 5HJLVWHU U
0 000 B 000
1 001 C 001
2 010 D 010
3 011 E 011
4 100 H 100
5 101 L 101
6 110 A 111
7 111
0&\FOHV 76WDWHV 0+](7
2 8 (4, 4) 4.50
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%QPFKVKQP$KVU#HHGEVGF
6LVXQNQRZQ
=LVVHWLIVSHFLILHGELWLVUHVHWRWKHUZLVH
+LVVHW
39LVXQNQRZQ
1LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IELWLQUHJLVWHU%FRQWDLQVDWH[HFXWLRQRI BIT 2, B WKH=IODJLQWKH
)UHJLVWHUFRQWDLQVDQGELWLQUHJLVWHU%UHPDLQV%LWLQUHJLVWHU%LV
WKHOHDVWVLJQLILFDQWELW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%,7E+/
1RGTCVKQP =+/E
1R%QFG %,7
1RGTCPFU E+/
1 1 0 0 1 0 1 1 CB
0 1 b 1 1 0
&GUETKRVKQP 7KLVLQVWUXFWLRQWHVWVELWELQWKHPHPRU\ORFDWLRQVSHFLILHGE\WKHFRQWHQWV
RIWKH+/UHJLVWHUSDLUDQGVHWVWKH=IODJDFFRUGLQJO\2SHUDQGELV
VSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
%LW7HVWHG E
0 000
1 001
2 010
3 011
4 100
5 101
6 110
1 111
0&\FOHV 76WDWHV 0+](7
3 12 (4, 4, 4) 4 3.00
%QPFKVKQP$KVU#HHGEVGF
6LVXQNQRZQ
=LVVHWLIVSHFLILHG%LWLVUHVHWRWKHUZLVH
+LVVHW
39LVXQNQRZQ
+LVUHVHW
&LVQRWDIIHFWHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKH+/UHJLVWHUSDLUFRQWDLQV4444HDQGELWLQWKHPHPRU\ORFDWLRQ
444HFRQWDLQVDWH[HFXWLRQRI BIT4,(HL)WKH=IODJLQWKH)UHJLVWHU
FRQWDLQVDQGELWLQPHPRU\ORFDWLRQ4444HVWLOOFRQWDLQV%LWLQ
PHPRU\ORFDWLRQ4444HLVWKHOHDVWVLJQLILFDQWELW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%,7E,;G
1RGTCVKQP =,;GE
1R%QFG %,7
1 1 0 0 1 0 1 1 CB
0 1 b 1 1 0
&GUETKRVKQP 7KLVLQVWUXFWLRQWHVWVELWELQWKHPHPRU\ORFDWLRQVSHFLILHGE\WKHFRQWHQWV
RIUHJLVWHUSDLU,;FRPELQHGZLWKWKHWZR¶VFRPSOHPHQWGLVSODFHPHQWG
DQGVHWVWKH=IODJDFFRUGLQJO\2SHUDQGELVVSHFLILHGDVIROORZVLQWKH
DVVHPEOHGREMHFWFRGH
%LW7HVWHG E
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
0F\FOHV 76WDWHV 0+](7
5 20 (4, 4, 3, 5, 4) 5.00
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%QPFKVKQP$KVU#HHGEVGF
6LVXQNQRZQ
=LVVHWLIVSHFLILHG%LWLVUHVHWRWKHUZLVH
+LVVHW
39LVXQNQRZQ
1LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRI,QGH[5HJLVWHU,;DUH2000HDQGELWLQPHPRU\
ORFDWLRQ2004HFRQWDLQVDWH[HFXWLRQRI BIT6,(IX+4H)WKH=IODJLQ
WKH)UHJLVWHUFRQWDLQVDQGELWLQPHPRU\ORFDWLRQ2004HVWLOOFRQWDLQV
%LWLQPHPRU\ORFDWLRQ2004HLVWKHOHDVWVLJQLILFDQWELW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%,7E,<G
1RGTCVKQP =,<GE
1R%QFG %,7
1 1 0 0 1 0 1 1 CB
0 1 b 1 1 0
&GUETKRVKQP 7KLVLQVWUXFWLRQWHVWVELWELQWKHPHPRU\ORFDWLRQVSHFLILHGE\WKHFRQWHQW
RIUHJLVWHUSDLU,<FRPELQHGZLWKWKHWZR¶VFRPSOHPHQWGLVSODFHPHQWG
DQGVHWVWKH=IODJDFFRUGLQJO\2SHUDQGELVVSHFLILHGDVIROORZVLQWKH
DVVHPEOHGREMHFWFRGH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%LW7HVWHG E
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
0&\FOHV 76WDWHV 0+](7
5 20 (4, 4, 3, 5, 4) 5.00
%QPFKVKQP$KVU#HHGEVGF
6LVXQNQRZQ
=LVVHWLIVSHFLILHG%LWLVUHVHWRWKHUZLVH
+LVVHW
39LVXQNQRZQ
+LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRI,QGH[5HJLVWHUDUH2000HDQGELWLQPHPRU\ORFDWLRQ
2004HFRQWDLQVDWH[HFXWLRQRI BIT6(IY+4H)WKH=IODJDQGWKH)
UHJLVWHUVWLOOFRQWDLQDQGELWLQPHPRU\ORFDWLRQ2004HVWLOOFRQWDLQV
%LWLQPHPRU\ORFDWLRQ2004HLVWKHOHDVWVLJQLILFDQWELW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
6(7EU
1RGTCVKQP UE
1R%QFG 6(7
1RGTCPFU EU
1 1 0 0 1 0 1 1 CB
1 1 b r
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
6(7E+/
1RGTCVKQP +/E
1R%QFG 6(7
1RGTCPFU E+/
1 1 0 0 1 0 1 1 CB
1 1 b r
&GUETKRVKQP %LWELQWKHPHPRU\ORFDWLRQDGGUHVVHGE\WKHFRQWHQWVRIUHJLVWHUSDLU+/
LVVHW2SHUDQGELVVSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
%LW7HVWHG E
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
0&\FOHV 76WDWHV 0+](7
4 15 (4, 4, 4, 3) 3.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUH3000HDWH[HFXWLRQRI
SET4(HL)ELWLQPHPRU\ORFDWLRQ3000HLV%LWLQPHPRU\
ORFDWLRQ3000HLVWKHOHDVWVLJQLILFDQWELW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
6(7E,;G
1RGTCVKQP ,;GE
1R%QFG 6(7
&GUETKRVKQP %LWELQWKHPHPRU\ORFDWLRQDGGUHVVHGE\WKHVXPRIWKHFRQWHQWVRIWKH,;
UHJLVWHUSDLUDQGWKHWZR¶VFRPSOHPHQWLQWHJHUGLVVHW2SHUDQGELV
VSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
%LW7HVWHG E
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
0&\FOHV 76WDWHV 0+](7
6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRI,QGH[5HJLVWHUDUH2000HDWH[HFXWLRQRI
SET0(IX+3H) ELWLQPHPRU\ORFDWLRQ2003HLV
%LWLQPHPRU\ORFDWLRQ2003HLVWKHOHDVWVLJQLILFDQWELW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
6(7E,<G
1RGTCVKQP ,<GE
1R%QFG 6(7
1 1 0 0 1 0 1 1 CB
1 1 b 1 1 0
&GUETKRVKQP %LWELQWKHPHPRU\ORFDWLRQDGGUHVVHGE\WKHVXPRIWKHFRQWHQWVRIWKH,<
UHJLVWHUSDLUDQGWKHWZR¶VFRPSOHPHQWGLVSODFHPHQWGLVVHW2SHUDQGELV
VSHFLILHGDVIROORZVLQWKHDVVHPEOHGREMHFWFRGH
%LW7HVWHG E
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
0&\FOHV 76WDWHV 0+](7
6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRI,QGH[5HJLVWHU,<DUH2000HDWH[HFXWLRQRI
SET 0, (IY+3H) ELWLQPHPRU\ORFDWLRQ2003HLV%LWLQPHPRU\
ORFDWLRQ2003HLVWKHOHDVWVLJQLILFDQWELW
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5(6EP
1RGTCVKQP VE
1R%QFG 5(6
1RGTCPFU EP
2SHUDQGELVDQ\ELWWKURXJKRIWKHFRQWHQWVRIWKHPRSHUDQGDQ\RI
U+/,;GRUO<GDVGHILQHGIRUWKHDQDORJRXV6(7LQVWUXFWLRQV
7KHVHSRVVLEOH2S&RGHRSHUDQGFRPELQDWLRQVDUHDVVHPEOHGDVIROORZVLQ
WKHREMHFWFRGH
RES b, rn 1 1 0 0 1 0 1 1 CB
1 0 b r
RES b, (HL) 1 1 0 0 1 0 1 1 CB
1 0 b 1 1 0
RES b, (IX+d) 1 1 0 1 1 1 0 1 DD
1 1 0 0 1 0 1 1 CB
1 0 b 1 1 0
RES b, (IY+d) 1 1 1 1 1 1 0 1 FD
1 1 0 0 1 0 1 1 CB
1 0 b 1 1 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%LW E 5HJLVWHU U
0 000 B 000
1 001 C 001
2 010 D 010
3 011 E 011
4 100 H 100
5 101 L 101
6 110 A 111
7 111
&GUETKRVKQP %LWELQRSHUDQGPLVUHVHW
,QVWUXFWLRQ 0&\FOHV 76WDWHV 0+](7
RES r 4 8 (4, 4) 2.00
RES (HL) 4 15 (4, 4, 4, 3) 3.75
RES (IX+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
RES (lY+d) 6 23 (4, 4, 3, 5, 4, 3) 5.75
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-XPS*URXS
-3QQ
1RGTCVKQP 3&QQ
1R%QFG -3
1RGTCPFU QQ
1 1 0 0 0 0 1 1 C3
Note: The first operand in this assembled object code is the low order
byte of a two-byte address.
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-3FFQQ
1RGTCVKQP ,)FFWUXH3&QQ
1R%QFG -3
1RGTCPFU FFQQ
1 1 00 0 1 0
7KHILUVWnRSHUDQGLQWKLVDVVHPEOHGREMHFWFRGHLVWKHORZRUGHUE\WHRID
E\WHPHPRU\DGGUHVV
&GUETKRVKQP ,IFRQGLWLRQccLVWUXHWKHLQVWUXFWLRQORDGVRSHUDQGnnWRUHJLVWHUSDLU3&
3URJUDP&RXQWHUDQGWKHSURJUDPFRQWLQXHVZLWKWKHLQVWUXFWLRQ
EHJLQQLQJDWDGGUHVVnn,IFRQGLWLRQccLVIDOVHWKH3URJUDP&RXQWHULV
LQFUHPHQWHGDVXVXDODQGWKHSURJUDPFRQWLQXHVZLWKWKHQH[WVHTXHQWLDO
LQVWUXFWLRQ&RQGLWLRQccLVSURJUDPPHGDVRQHRIHLJKWVWDWXVWKDW
FRUUHVSRQGVWRFRQGLWLRQELWVLQWKH)ODJ5HJLVWHUUHJLVWHU)7KHVHHLJKW
VWDWXVDUHGHILQHGLQWKHWDEOHEHORZWKDWDOVRVSHFLILHVWKHFRUUHVSRQGLQJ
ccELWILHOGVLQWKHDVVHPEOHGREMHFWFRGH
5HOHYDQW
FF &RQGLWLRQ )ODJ
000 NZ non zero Z
001 Z zero Z
010 NC no carry C
011 C carry C
100 PO parity odd P/V
101 PE parity even P/V
110 P sign positive S
111 M sign negative S
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-5H
1RGTCVKQP 3&3&H
1R%QFG -5
1RGTCPFU H
0 0 0 1 1 0 0 0 18
e-2
&GUETKRVKQP 7KLVLQVWUXFWLRQSURYLGHVIRUXQFRQGLWLRQDOEUDQFKLQJWRRWKHUVHJPHQWVRI
DSURJUDP7KHYDOXHRIWKHGLVSODFHPHQWeLVDGGHGWRWKH3URJUDP
&RXQWHU3&DQGWKHQH[WLQVWUXFWLRQLVIHWFKHGIURPWKHORFDWLRQ
GHVLJQDWHGE\WKHQHZFRQWHQWVRIWKH3&7KLVMXPSLVPHDVXUHGIURPWKH
DGGUHVVRIWKHLQVWUXFWLRQ2S&RGHDQGKDVDUDQJHRIWRE\WHV
7KHDVVHPEOHUDXWRPDWLFDOO\DGMXVWVIRUWKHWZLFHLQFUHPHQWHG3&
0&\FOHV 76WDWHV 0+](7
3 12 (4, 3, 5) 3.00
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG 7RMXPSIRUZDUGILYHORFDWLRQVIURPDGGUHVVWKHIROORZLQJDVVHPEO\
ODQJXDJHVWDWHPHQWLVXVHG JR $+5
7KHUHVXOWLQJREMHFWFRGHDQGILQDO3&YDOXHLVVKRZQEHORZ
/RFDWLRQ ,QVWUXFWLRQ
480 18
481 03
482 -
483 -
484 -
485 PC after jump
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-5&H
1RGTCVKQP ,I& FRQWLQXH
,I& 3&3&H
1R%QFG -5
1RGTCPFU &H
0 0 1 1 1 0 0 0 38
e-2
&GUETKRVKQP 7KLVLQVWUXFWLRQSURYLGHVIRUFRQGLWLRQDOEUDQFKLQJWRRWKHUVHJPHQWVRID
SURJUDPGHSHQGLQJRQWKHUHVXOWVRIDWHVWRQWKH&DUU\)ODJ,IWKHIODJLV
HTXDOWRDWKHYDOXHRIWKHGLVSODFHPHQWHLVDGGHGWRWKH3URJUDP
&RXQWHU3&DQGWKHQH[WLQVWUXFWLRQLVIHWFKHGIURPWKHORFDWLRQ
GHVLJQDWHGE\WKHQHZFRQWHQWVRIWKH3&7KHMXPSLVPHDVXUHGIURPWKH
DGGUHVVRIWKHLQVWUXFWLRQ2S&RGHDQGKDVDUDQJHRIWRE\WHV
7KHDVVHPEOHUDXWRPDWLFDOO\DGMXVWVIRUWKHWZLFHLQFUHPHQWHG3&
,IWKHIODJLVHTXDOWRDWKHQH[WLQVWUXFWLRQH[HFXWHGLVWDNHQIURPWKH
ORFDWLRQIROORZLQJWKLVLQVWUXFWLRQ,IFRQGLWLRQLVPHW
0&\FOHV 76WDWHV 0+](7
3 12 (4, 3, 5) 3.00
,IFRQGLWLRQLVQRWPHW
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG 7KH&DUU\IODJLVVHWDQGLWLVUHTXLUHGWRMXPSEDFNIRXUORFDWLRQVIURP
7KHDVVHPEO\ODQJXDJHVWDWHPHQWLVJRC$-4
7KHUHVXOWLQJREMHFWFRGHDQGILQDO3&YDOXHLVVKRZQEHORZ
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/RFDWLRQ ,QVWUXFWLRQ
47C PC after jump
47D -
47E -
47F -
480 38
481 FA (two’s complement - 6)
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-51&H
1RGTCVKQP ,I& FRQWLQXH
,I& 3&3&H
1R%QFG -5
1RGTCPFU 1&H
0 0 1 1 0 0 0 0 30
e-2
&GUETKRVKQP 7KLVLQVWUXFWLRQSURYLGHVIRUFRQGLWLRQDOEUDQFKLQJWRRWKHUVHJPHQWVRID
SURJUDPGHSHQGLQJRQWKHUHVXOWVRIDWHVWRQWKH&DUU\)ODJ,IWKHIODJLV
HTXDOWRWKHYDOXHRIWKHGLVSODFHPHQWeLVDGGHGWRWKH3URJUDP&RXQWHU
3&DQGWKHQH[WLQVWUXFWLRQLVIHWFKHGIURPWKHORFDWLRQGHVLJQDWHGE\WKH
QHZFRQWHQWVRIWKH3&7KHMXPSLVPHDVXUHGIURPWKHDGGUHVVRIWKH
LQVWUXFWLRQ2S&RGHDQGKDVDUDQJHRIWRE\WHV7KHDVVHPEOHU
DXWRPDWLFDOO\DGMXVWVIRUWKHWZLFHLQFUHPHQWHG3&
,IWKHIODJLVHTXDOWRDWKHQH[WLQVWUXFWLRQH[HFXWHGLVWDNHQIURPWKH
ORFDWLRQIROORZLQJWKLVLQVWUXFWLRQ
,IWKHFRQGLWLRQLVPHW
0&\FOHV 76WDWHV 0+](7
3 12 (4, 3, 5) 3.00
,IWKHFRQGLWLRQLVQRWPHW
0&\FOHV 76WDWHV 0+](7
7 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG 7KH&DUU\)ODJLVUHVHWDQGLWLVUHTXLUHGWRUHSHDWWKHMXPSLQVWUXFWLRQ7KH
DVVHPEO\ODQJXDJHVWDWHPHQWLVJRNC$
7KHUHVXOWLQJREMHFWFRGHDQG3&DIWHUWKHMXPSDUH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/RFDWLRQ ,QVWUXFWLRQ
480 30 PC after jump
481 00
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-5=H
1RGTCVKQP ,I= FRQWLQXH
,I= 3&3&H
1R%QFG -5
1RGTCPFU =H
0 0 1 0 1 0 0 0 28
e-2
&GUETKRVKQP 7KLVLQVWUXFWLRQSURYLGHVIRUFRQGLWLRQDOEUDQFKLQJWRRWKHUVHJPHQWVRID
SURJUDPGHSHQGLQJRQWKHUHVXOWVRIDWHVWRQWKH=HUR)ODJ,IWKHIODJLV
HTXDOWRDWKHYDOXHRIWKHGLVSODFHPHQWHLVDGGHGWRWKH3URJUDP
&RXQWHU3&DQGWKHQH[WLQVWUXFWLRQLVIHWFKHGIURPWKHORFDWLRQ
GHVLJQDWHGE\WKHQHZFRQWHQWVRIWKH3&7KHMXPSLVPHDVXUHGIURPWKH
DGGUHVVRIWKHLQVWUXFWLRQ2S&RGHDQGKDVDUDQJHRIWRE\WHV
7KHDVVHPEOHUDXWRPDWLFDOO\DGMXVWVIRUWKHWZLFHLQFUHPHQWHG3&
,IWKH=HUR)ODJLVHTXDOWRDWKHQH[WLQVWUXFWLRQH[HFXWHGLVWDNHQIURP
WKHORFDWLRQIROORZLQJWKLVLQVWUXFWLRQ,IWKHFRQGLWLRQLVPHW
0&\FOHV 76WDWHV 0+](7
3 12 (4, 3, 5) 3.00
If the condition is not met;
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG 7KH=HUR)ODJLVVHWDQGLWLVUHTXLUHGWRMXPSIRUZDUGILYHORFDWLRQV
IURPDGGUHVV7KHIROORZLQJDVVHPEO\ODQJXDJHVWDWHPHQWLVXVHG
JRZ,$+5
7KHUHVXOWLQJREMHFWFRGHDQGILQDO3&YDOXHLV
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/RFDWLRQ ,QVWUXFWLRQ
300 28
301 03
302 -
303 -
304 -
305 PC after jump
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-51=H
1RGTCVKQP ,I= FRQWLQXH
,I= 3&SFH
1R%QFG -5
1RGTCPFU 1=H
0 0 1 0 0 0 0 0 20
e-2
&GUETKRVKQP 7KLVLQVWUXFWLRQSURYLGHVIRUFRQGLWLRQDOEUDQFKLQJWRRWKHUVHJPHQWVRID
SURJUDPGHSHQGLQJRQWKHUHVXOWVRIDWHVWRQWKH=HUR)ODJ,IWKHIODJLV
HTXDOWRDWKHYDOXHRIWKHGLVSODFHPHQWHLVDGGHGWRWKH3URJUDP
&RXQWHU3&DQGWKHQH[WLQVWUXFWLRQLVIHWFKHGIURPWKHORFDWLRQ
GHVLJQDWHGE\WKHQHZFRQWHQWVRIWKH3&7KHMXPSLVPHDVXUHGIURPWKH
DGGUHVVRIWKHLQVWUXFWLRQ2S&RGHDQGKDVDUDQJHRIWRE\WHV
7KHDVVHPEOHUDXWRPDWLFDOO\DGMXVWVIRUWKHWZLFHLQFUHPHQWHG3&
,IWKH=HUR)ODJLVHTXDOWRDWKHQH[WLQVWUXFWLRQH[HFXWHGLVWDNHQIURP
WKHORFDWLRQIROORZLQJWKLVLQVWUXFWLRQ
,IWKHFRQGLWLRQLVPHW
0&\FOHV 76WDWHV 0+](7
3 12 (4, 3, 5) 3.00
,IWKHFRQGLWLRQLVQRWPHW
0&\FOHV 76WDWHV 0+](7
2 7 (4, 3) 1.75
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG 7KH=HUR)ODJLVUHVHWDQGLWLVUHTXLUHGWRMXPSEDFNIRXUORFDWLRQVIURP
7KHDVVHPEO\ODQJXDJHVWDWHPHQWLVJRNZ$-4
7KHUHVXOWLQJREMHFWFRGHDQGILQDO3&YDOXHLV
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
/RFDWLRQ ,QVWUXFWLRQ
47C PC after jump
47D -
47E -
47F -
480 20
481 FA (two’s complement - 6)
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-3+/
1RGTCVKQP SFK/
1R%QFG -3
1RGTCPFU +/
1 1 1 0 1 0 0 1 E9
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIWKH3URJUDP&RXQWHUDUH1000HDQGWKHFRQWHQWVRIWKH
+/UHJLVWHUSDLUDUH4800HDWH[HFXWLRQRIJP(HL)WKHFRQWHQWVRIWKH
3URJUDP&RXQWHUDUH4800H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-3,;
1RGTCVKQP SF,;
1R%QFG -3
1RGTCPFU ,;
1 1 0 1 1 1 0 1 DD
1 1 1 0 1 0 0 1 E9
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIWKH3URJUDP&RXQWHUDUH1000HDQGWKHFRQWHQWVRIWKH
,;5HJLVWHU3DLUDUH4800HDWH[HFXWLRQRIJP(IX)WKHFRQWHQWVRIWKH
3URJUDP&RXQWHUDUH4800H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
-3,<
1RGTCVKQP 3&,<
1R%QFG -3
1RGTCPFU ,<
1 1 1 1 1 1 0 1 FD
1 1 1 0 1 0 0 1 E9
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIWKH3URJUDP&RXQWHUDUH+DQGWKHFRQWHQWVRIWKH
,<5HJLVWHU3DLUDUH+DWH[HFXWLRQRI JP (IY) WKHFRQWHQWVRIWKH
3URJUDP&RXQWHUDUH+
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'-1=H
1RGTCVKQP
1R%QFG '-1=
1RGTCPFU H
0 0 0 1 0 0 0 0 10
e2
&GUETKRVKQP 7KLVLQVWUXFWLRQLVVLPLODUWRWKHFRQGLWLRQDOMXPSLQVWUXFWLRQVH[FHSWWKDW
DUHJLVWHUYDOXHLVXVHGWRGHWHUPLQHEUDQFKLQJ7KH%UHJLVWHULV
GHFUHPHQWHGDQGLIDQRQ]HURYDOXHUHPDLQVWKHYDOXHRIWKH
GLVSODFHPHQWDLVDGGHGWRWKH3URJUDP&RXQWHU3&7KHQH[W
LQVWUXFWLRQLVIHWFKHGIURPWKHORFDWLRQGHVLJQDWHGE\WKHQHZFRQWHQWVRI
WKH3&7KHMXPSLVPHDVXUHGIURPWKHDGGUHVVRIWKHLQVWUXFWLRQ2S
&RGHDQGKDVDUDQJHRIWRE\WHV7KHDVVHPEOHUDXWRPDWLFDOO\
DGMXVWVIRUWKHWZLFHLQFUHPHQWHG3&
,IWKHUHVXOWRIGHFUHPHQWLQJOHDYHV%ZLWKD]HURYDOXHWKHQH[WLQVWUXFWLRQ
H[HFXWHGLVWDNHQIURPWKHORFDWLRQIROORZLQJWKLVLQVWUXFWLRQ
LI%
0&\FOHV 76WDWHV 0+](7
3 13 (5,3, 5) 3.25
,I%
0&\FOHV 76WDWHV 0+](7
2 8 (5, 3) 2.00
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG $W\SLFDOVRIWZDUHURXWLQHLVXVHGWRGHPRQVWUDWHWKHXVHRIWKH'-1=
LQVWUXFWLRQ7KLVURXWLQHPRYHVDOLQHIURPDQLQSXWEXIIHU,1%8)WRDQ
RXWSXWEXIIHU287%8),WPRYHVWKHE\WHVXQWLOLWILQGVD&5RUXQWLOLW
KDVPRYHGE\WHVZKLFKHYHURFFXUVILUVW
LD 8, 80 ;Set up counter
LD HL, Inbuf ;Set up pointers
LD DE, Outbuf
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&DOO$QG5HWXUQ*URXS
&$//QQ
1RGTCVKQP 633&+633&/3&QQ
1R%QFG &$//
1RGTCPFU QQ
1 1 0 0 1 1 0 1 CD
7KHILUVWRIWKHWZRQRSHUDQGVLQWKHDVVHPEOHGREMHFWFRGHDERYHLVWKH
OHDVWVLJQLILFDQWE\WHRIDE\WHPHPRU\DGGUHVV
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKHFRQWHQWVRIWKH3URJUDP&RXQWHUDUH1A47HWKHFRQWHQWVRIWKH6WDFN
3RLQWHUDUH3002HDQGPHPRU\ORFDWLRQVKDYHWKHFRQWHQWV
1A47H contains CDH
IA48H contains 35H
1A49H contains 21H
,IDQLQVWUXFWLRQIHWFKVHTXHQFHEHJLQVWKHE\WHLQVWUXFWLRQCD3521H LV
IHWFKHGWRWKH&38IRUH[HFXWLRQ7KHPQHPRQLFHTXLYDOHQWRIWKLVLVCALL
2135H$WH[HFXWLRQRIWKLVLQVWUXFWLRQWKHFRQWHQWVRIPHPRU\DGGUHVV
3001HLV1AHWKHFRQWHQWVRIDGGUHVV3000HLV4AHWKHFRQWHQWVRIWKH
6WDFN3RLQWHULV3000HDQGWKHFRQWHQWVRIWKH3URJUDP&RXQWHULV2135H
SRLQWLQJWRWKHDGGUHVVRIWKHILUVW2S&RGHRIWKHVXEURXWLQHQRZWREH
H[HFXWHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&$//FFQQ
1RGTCVKQP ,)FFWUXHVS3&+
VS3&/SFQQ
1R%QFG &$//
1RGTCPFU FFQQ
1 1 cc 1 0 0
Note: The first of the two n operands in the assembled object code
above is the least-significant byte of the 2-byte memory address.
&GUETKRVKQP ,IFRQGLWLRQccLVWUXHWKLVLQVWUXFWLRQSXVKHVWKHFXUUHQWFRQWHQWVRIWKH
3URJUDP&RXQWHU3&RQWRWKHWRSRIWKHH[WHUQDOPHPRU\VWDFNWKHQ
ORDGVWKHRSHUDQGVnnWR3&WRSRLQWWRWKHDGGUHVVLQPHPRU\ZKHUHWKH
ILUVW2S&RGHRIDVXEURXWLQHLVWREHIHWFKHG$WWKHHQGRIWKHVXEURXWLQH
D5(7XUQLQVWUXFWLRQFDQEHXVHGWRUHWXUQWRWKHRULJLQDOSURJUDPIORZE\
SRSSLQJWKHWRSRIWKHVWDFNEDFNWR3&,IFRQGLWLRQccLVIDOVHWKH
3URJUDP&RXQWHULVLQFUHPHQWHGDVXVXDODQGWKHSURJUDPFRQWLQXHVZLWK
WKHQH[WVHTXHQWLDOLQVWUXFWLRQ7KHVWDFNSXVKLVDFFRPSOLVKHGE\ILUVW
GHFUHPHQWLQJWKHFXUUHQWFRQWHQWVRIWKH6WDFN3RLQWHU63ORDGLQJWKH
KLJKRUGHUE\WHRIWKH3&FRQWHQWVWRWKHPHPRU\DGGUHVVQRZSRLQWHGWR
E\63WKHQGHFUHPHQWLQJ63DJDLQDQGORDGLQJWKHORZRUGHUE\WHRIWKH
3&FRQWHQWVWRWKHWRSRIWKHVWDFN
%HFDXVHWKLVLVDE\WHLQVWUXFWLRQWKH3URJUDP&RXQWHUZDVLQFUHPHQWHG
E\WKUHHEHIRUHWKHSXVKLVH[HFXWHG
&RQGLWLRQccLVSURJUDPPHGDVRQHRIHLJKWVWDWXVWKDWFRUUHVSRQGVWR
FRQGLWLRQELWVLQWKH)ODJ5HJLVWHUUHJLVWHU)7KHVHHLJKWVWDWXVDUH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
GHILQHGLQWKHWDEOHEHORZZKLFKDOVRVSHFLILHVWKHFRUUHVSRQGLQJFFELW
ILHOGVLQWKHDVVHPEOHGREMHFWFRGH
5HOHYDQW
FF &RQGLWLRQ )ODJ
000 NZ non zero Z
001 Z zero Z
010 NC non carry C
011 C carry Z
100 PO parity odd P/V
101 PE parity even P/V
110 P sign positive S
111 M sign negative S
,IccLVWUXH
0&\FOHV 76WDWHV 0+](7
5 17 (4, 3, 4, 3, 3) 4.25
,IccLVIDOVH
0&\FOHV 76WDWHV 0+](7
3 10 (4, 3, 3) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH&)ODJLQWKH)UHJLVWHULVUHVHWWKHFRQWHQWVRIWKH3URJUDP&RXQWHU
DUH1A47HWKHFRQWHQWVRIWKH6WDFN3RLQWHUDUH3002HDQGPHPRU\
ORFDWLRQVKDYHWKHFRQWHQWV
/RFDWLRQ &RQWHQWV
1A47H D4H
1448H 35H
1A49H 21H
WKHQLIDQLQVWUXFWLRQIHWFKVHTXHQFHEHJLQVWKHE\WHLQVWUXFWLRQ
D43521H LVIHWFKHGWRWKH&38IRUH[HFXWLRQ7KHPQHPRQLFHTXLYDOHQWRI
WKLVLV&$//1&2135H$WH[HFXWLRQRIWKLVLQVWUXFWLRQWKHFRQWHQWVRI
PHPRU\DGGUHVV3001HLV1AHWKHFRQWHQWVRIDGGUHVV3000HLV4AHWKH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
FRQWHQWVRIWKH6WDFN3RLQWHULV3000HDQGWKHFRQWHQWVRIWKH3URJUDP
&RXQWHULV2135HSRLQWLQJWRWKHDGGUHVVRIWKHILUVW2S&RGHRIWKH
VXEURXWLQHQRZWREHH[HFXWHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5(7
1RGTCVKQP S&/VSS&+VS
1R%QFG 5(7
1 1 0 0 1 0 0 1 C9
&GUETKRVKQP 7KHE\WHDWWKHPHPRU\ORFDWLRQVSHFLILHGE\WKHFRQWHQWVRIWKH6WDFN
3RLQWHU63UHJLVWHUSDLULVPRYHGWRWKHORZRUGHUHLJKWELWVRIWKH
3URJUDP&RXQWHU3&7KH63LVQRZLQFUHPHQWHGDQGWKHE\WHDWWKH
PHPRU\ORFDWLRQVSHFLILHGE\WKHQHZFRQWHQWVRIWKLVLQVWUXFWLRQLVIHWFKHG
IURPWKHPHPRU\ORFDWLRQVSHFLILHGE\WKH3&7KLVLQVWUXFWLRQLVQRUPDOO\
XVHGWRUHWXUQWRWKHPDLQOLQHSURJUDPDWWKHFRPSOHWLRQRIDURXWLQH
HQWHUHGE\D&$//LQVWUXFWLRQ
0&\FOHV 76WDWHV 0+](7
3 10 (4, 3, 3) 2.50
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIWKH3URJUDP&RXQWHUDUH3535HWKHFRQWHQWVRIWKH6WDFN
3RLQWHUDUH2000HWKHFRQWHQWVRIPHPRU\ORFDWLRQ2000HDUHB5HDQG
WKHFRQWHQWVRIPHPRU\ORFDWLRQRIPHPRU\ORFDWLRQ2001HDUH18H$W
H[HFXWLRQRI RET WKHFRQWHQWVRIWKH6WDFN3RLQWHULV2002HDQGWKH
FRQWHQWVRIWKH3URJUDP&RXQWHULV18B5HSRLQWLQJWRWKHDGGUHVVRIWKH
QH[WSURJUDP2S&RGHWREHIHWFKHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5(7FF
1RGTCVKQP ,IccWUXH3&/VSS&+VS
1R%QFG 5(7
1RGTCPFU FF
1 1 cc 0 0 0
&GUETKRVKQP ,IFRQGLWLRQFFLVWUXHWKHE\WHDWWKHPHPRU\ORFDWLRQVSHFLILHGE\WKH
FRQWHQWVRIWKH6WDFN3RLQWHU63UHJLVWHUSDLULVPRYHGWRWKHORZRUGHU
HLJKWELWVRIWKH3URJUDP&RXQWHU3&7KH63LVLQFUHPHQWHGDQGWKHE\WH
DWWKHPHPRU\ORFDWLRQVSHFLILHGE\WKHQHZFRQWHQWVRIWKH63DUHPRYHG
WRWKHKLJKRUGHUHLJKWELWVRIWKH3&7KH63LVLQFUHPHQWHGDJDLQ7KH
QH[W2S&RGHIROORZLQJWKLVLQVWUXFWLRQLVIHWFKHGIURPWKHPHPRU\
ORFDWLRQVSHFLILHGE\WKH3&7KLVLQVWUXFWLRQLVQRUPDOO\XVHGWRUHWXUQWR
WKHPDLQOLQHSURJUDPDWWKHFRPSOHWLRQRIDURXWLQHHQWHUHGE\DCALL
LQVWUXFWLRQ,IFRQGLWLRQccLVIDOVHWKH3&LVVLPSO\LQFUHPHQWHGDVXVXDO
DQGWKHSURJUDPFRQWLQXHVZLWKWKHQH[WVHTXHQWLDOLQVWUXFWLRQ&RQGLWLRQ
FFLVSURJUDPPHGDVRQHRIHLJKWVWDWXVWKDWFRUUHVSRQGWRFRQGLWLRQELWVLQ
WKH)ODJ5HJLVWHUUHJLVWHU)7KHVHHLJKWVWDWXVDUHGHILQHGLQWKHWDEOH
EHORZZKLFKDOVRVSHFLILHVWKHFRUUHVSRQGLQJccELWILHOGVLQWKHDVVHPEOHG
REMHFWFRGH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5HOHYDQW
FF &RQGLWLRQ )ODJ
000 NZ non zero Z
001 Z zero Z
010 NC non carry C
011 C carry C
100 PO parity odd P/V
101 PE parity even P/V
110 P sign positive S
111 M sign negative S
,IccLVWUXH
0&\FOHV 76WDWHV 0+](7
3 11 (5, 3, 3) 2.75
,IccLVIDOVH
0&\FOHV 76WDWHV 0+](7
1 5 1.25
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKH6IODJLQWKH)UHJLVWHULVVHWWKHFRQWHQWVRIWKH3URJUDP&RXQWHUDUH
3535HWKHFRQWHQWVRIWKH6WDFN3RLQWHUDUH2000HWKHFRQWHQWVRI
PHPRU\ORFDWLRQ2000HDUHB5HDQGWKHFRQWHQWVRIPHPRU\ORFDWLRQ
2001HDUH18H$WH[HFXWLRQRI RET M WKHFRQWHQWVRIWKH6WDFN3RLQWHU
LV2002HDQGWKHFRQWHQWVRIWKH3URJUDP&RXQWHULV18B5HSRLQWLQJWR
WKHDGGUHVVRIWKHQH[WSURJUDP2S&RGHWREHIHWFKHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5(7,
1RGTCVKQP 5HWXUQIURP,QWHUUXSW
1R%QFG 5(7,
1 1 1 0 1 1 0 1 ED
0 1 0 0 1 1 0 1 4D
&GUETKRVKQP 7KLVLQVWUXFWLRQLVXVHGDWWKHHQGRIDPDVNDEOHLQWHUUXSWVHUYLFHURXWLQHWR
• Restore the contents of the Program Counter (PC) (analogous to the
RET instruction)
• Signal an I/O device that the interrupt routine is completed. The RETI
instruction also facilitates the nesting of interrupts, allowing higher
priority devices to temporarily suspend service of lower priority
service routines. However, this instruction does not enable interrupts
that were disabled when the interrupt routine was entered. Before
doing the RETI instruction, the enable interrupt instruction (EI)
should be executed to allow recognition of interrupts after completion
of the current service routine.
0&\FOHV 76WDWHV 0+](7
4 14 (4, 4, 3, 3) 3.50
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG *LYHQ7ZRLQWHUUXSWLQJGHYLFHVZLWK$DQG%FRQQHFWHGLQDGDLV\FKDLQ
FRQILJXUDWLRQDQG$KDYLQJDKLJKHUSULRULW\WKDQ%
A B
+
INT
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
5(71
1RGTCVKQP 5HWXUQIURPQRQPDVNDEOHLQWHUUXSW
1R%QFG 5(71
1 1 1 0 1 1 0 1 ED
0 1 0 0 0 1 0 1 45
&GUETKRVKQP 7KLVLQVWUXFWLRQLVXVHGDWWKHHQGRIDQRQPDVNDEOHLQWHUUXSWVVHUYLFH
URXWLQHWRUHVWRUHWKHFRQWHQWVRIWKH3URJUDP&RXQWHU3&DQDORJRXVWR
WKH5(7LQVWUXFWLRQ7KHVWDWHRI,))LVFRSLHGEDFNWR,))VRWKDW
PDVNDEOHLQWHUUXSWVDUHHQDEOHGLPPHGLDWHO\IROORZLQJWKH5(71LIWKH\
ZHUHHQDEOHGEHIRUHWKHQRQPDVNDEOHLQWHUUXSW
0&\FOHV 76WDWHV 0+](7
4 14 (4, 4, 3, 3) 3.50
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIWKH6WDFN3RLQWHUDUH1000HDQGWKHFRQWHQWVRIWKH
3URJUDP&RXQWHUDUH1A45HZKHQDQRQPDVNDEOHLQWHUUXSW10,VLJQDO
LVUHFHLYHGWKH&38LJQRUHVWKHQH[WLQVWUXFWLRQDQGLQVWHDGUHVWDUWVWR
PHPRU\DGGUHVV0066H7KHFXUUHQW3URJUDP&RXQWHUFRQWHQWVRI1A45H
LVSXVKHGRQWRWKHH[WHUQDOVWDFNDGGUHVVRI0FFFHDQG0FFEHKLJKRUGHU
E\WHILUVWDQG0066HLVORDGHGRQWRWKH3URJUDP&RXQWHU7KDWDGGUHVV
EHJLQVDQLQWHUUXSWVHUYLFHURXWLQHWKDWHQGVZLWKDRETNLQVWUXFWLRQ
8SRQWKHH[HFXWLRQRI RETN WKHIRUPHU3URJUDP&RXQWHUFRQWHQWVDUH
SRSSHGRIIWKHH[WHUQDOPHPRU\VWDFNORZRUGHUILUVWUHVXOWLQJLQD6WDFN
3RLQWHUFRQWHQWVDJDLQRI1000H7KHSURJUDPIORZFRQWLQXHVZKHUHLW
OHIWRIIZLWKDQ2S&RGHIHWFKWRDGGUHVV1A45HRUGHUE\WHILUVWDQG
+LVORDGHGRQWRWKH3URJUDP&RXQWHU7KDWDGGUHVVEHJLQVDQ
LQWHUUXSWVHUYLFHURXWLQHWKDWHQGVZLWKDRETNLQVWUXFWLRQ$WH[HFXWLRQRI
RETN WKHIRUPHU3URJUDP&RXQWHUFRQWHQWVDUHSRSSHGRIIWKHH[WHUQDO
PHPRU\VWDFNORZRUGHUILUVWUHVXOWLQJLQD6WDFN3RLQWHUFRQWHQWVDJDLQRI
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1000H7KHSURJUDPIORZFRQWLQXHVZKHUHLWOHIWRIIZLWKDQ2S&RGHIHWFK
WRDGGUHVV1A45H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
567S
1RGTCVKQP 633&+633&/3&+3&/3
1R%QFG 567
1RGTCPFU S
1 1 t 1 1 1
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKHFRQWHQWVRIWKH3URJUDP&RXQWHUDUH%+DWH[HFXWLRQRI
RST 18H 2EMHFWFRGH1101111WKH3&FRQWDLQV0018HDVWKHDGGUHVV
RIWKHQH[W2S&RGHIHWFKHG
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,QSXWDQG2XWSXW*URXS
,1$Q
1RGTCVKQP $Q
1R%QFG ,1
1RGTCPFU $Q
1 1 0 1 1 0 1 1 DB
%QPFKVKQP$KVU#HHGEVGF1RQH
'ZCORNG ,IWKHFRQWHQWVRIWKH$FFXPXODWRUDUH23HDQGE\WH7BHLVDYDLODEOHDWWKH
SHULSKHUDOGHYLFHPDSSHGWR,2SRUWDGGUHVV01H$WH[HFXWLRQRIINA,
(01H) WKH$FFXPXODWRUFRQWDLQV7BH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1U&
1RGTCVKQP U&
1R%QFG ,1
0 1 r 0 0 0
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%QPFKVKQP$KVU#HHGEVGF
6LVVHWLILQSXWGDWDLVQHJDWLYHUHVHWRWKHUZLVH
=LVVHWLILQSXWGDWDLV]HURUHVHWRWKHUZLVH
+LVUHVHW
39LVVHWLISDULW\LVHYHQUHVHWRWKHUZLVH
1LVUHVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH07HWKHFRQWHQWVRIUHJLVWHU%DUH10H
DQGE\WH7BHLVDYDLODEOHDWWKHSHULSKHUDOGHYLFHPDSSHGWR,2SRUW
DGGUHVV07H$IWHUH[HFXWLRQRIIND,(C)UHJLVWHU'FRQWDLQV7BH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1,
1RGTCVKQP +/&%%+/+/
1R%QFG ,1,
1 1 1 0 1 1 0 1 ED
1 0 1 0 0 0 1 0 A2
%QPFKVKQP$KVU#HHGEVGF
6LVXQNQRZQ
=LVVHWLI%± UHVHWRWKHUZLVH
+LVXQNQRZQ
39LVXQNQRZQ
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH07HWKHFRQWHQWVRIUHJLVWHU%DUH10HWKH
FRQWHQWVRIWKH+/UHJLVWHUSDLUDUH1000HDQGE\WH7BHLVDYDLODEOHDWWKH
SHULSKHUDOGHYLFHPDSSHGWR,2SRUWDGGUHVV07H$WH[HFXWLRQRIINI
PHPRU\ORFDWLRQ1000HFRQWDLQV7BHWKH+/UHJLVWHUSDLUFRQWDLQV
1001HDQGUHJLVWHU%FRQWDLQV0FH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1,5
1RGTCVKQP +/&%%+/+/
1R%QFG ,1,5
1 1 1 0 1 1 0 1 ED
1 0 1 1 0 0 1 0 B2
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH07HWKHFRQWHQWVRIUHJLVWHU%DUH03H
WKHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUH1000HDQGWKHIROORZLQJ
VHTXHQFHRIE\WHVDUHDYDLODEOHDWWKHSHULSKHUDOGHYLFHPDSSHGWR,2
SRUWRIDGGUHVV07H
51H
A9H
03H
WKHQDWH[HFXWLRQRIINIR WKH+/ UHJLVWHUSDLUFRQWDLQV+UHJLVWHU%
FRQWDLQV]HURDQGPHPRU\ORFDWLRQVFRQWDLQWKHIROORZLQJ
1000H FRQWDLQV51H
1001H FRQWDLQVA9H
1002H FRQWDLQV03H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1'
1RGTCVKQP +/&%%+/+/
1R%QFG ,1'
1 1 1 0 1 1 0 1 ED
1 0 1 0 1 0 1 0 AA
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%QPFKVKQP$KVU#HHGEVGF
6LVXQNQRZQ
=LVVHWLI%± UHVHWRWKHUZLVH
+LVXQNQRZQ
39LVXQNQRZQ
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH07HWKHFRQWHQWVRIUHJLVWHU%DUH10HWKH
FRQWHQWVRIWKH+/UHJLVWHUSDLUDUH1000HDQGE\WH7BHLVDYDLODEOHDWWKH
SHULSKHUDOGHYLFHPDSSHGWR,2SRUWDGGUHVV07H$WH[HFXWLRQRIIND
PHPRU\ORFDWLRQ1000HFRQWDLQV7BHWKH+/UHJLVWHUSDLUFRQWDLQV
0FFFHDQGUHJLVWHU%FRQWDLQV0FH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
,1'5
1RGTCVKQP +/&%+/+/
1R%QFG ,1'5
1 1 1 0 1 1 0 1 ED
1 0 1 1 1 0 1 0 BA
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH07HWKHFRQWHQWVRIUHJLVWHU%DUH03HWKH
FRQWHQWVRIWKH+/UHJLVWHUSDLUDUH1000HDQGWKHIROORZLQJVHTXHQFHRI
E\WHVDUHDYDLODEOHDWWKHSHULSKHUDOGHYLFHPDSSHGWR,2SRUWDGGUHVV07H
51H
A9H
03H
WKHQDWH[HFXWLRQRIINDRWKH+/ UHJLVWHUSDLUFRQWDLQV0FFDHUHJLVWHU%
FRQWDLQV]HURDQGPHPRU\ORFDWLRQVFRQWDLQWKHIROORZLQJ
0FFEH FRQWDLQV03H
0FFFH FRQWDLQVA9H
1000H FRQWDLQV51H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
287Q$
1RGTCVKQP Q$
1R%QFG 287
1RGTCPFU Q$
1 1 0 1 0 0 1 1 D3
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
1R%QFG 287
0 1 r 0 0 1
%QPFKVKQP$KVU#HHGEVGF1RQH
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH01HDQGWKHFRQWHQWVRIUHJLVWHU'DUH5AH
DWH[HFXWLRQRIOUT(C),DE\WH5AHLVZULWWHQWRWKHSHULSKHUDOGHYLFH
PDSSHGWR,2SRUWDGGUHVV01H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
287,
1RGTCVKQP &+/%%+/+/
1R%QFG 287,
1 1 1 0 1 1 0 1 ED
1 0 1 0 0 0 1 1 A3
&GUETKRVKQP 7KHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUHSODFHGRQWKHDGGUHVVEXVWRVHOHFWD
ORFDWLRQLQPHPRU\7KHE\WHFRQWDLQHGLQWKLVPHPRU\ORFDWLRQLV
WHPSRUDULO\VWRUHGLQWKH&387KHQDIWHUWKHE\WHFRXQWHU%LV
GHFUHPHQWHGWKHFRQWHQWVRIUHJLVWHU&DUHSODFHGRQWKHERWWRPKDOI$
WKURXJK$RIWKHDGGUHVVEXVWRVHOHFWWKH,2GHYLFHDWRQHRI
SRVVLEOHSRUWV5HJLVWHU%PD\EHXVHGDVDE\WHFRXQWHUDQGLWV
GHFUHPHQWHGYDOXHLVSODFHGRQWKHWRSKDOI$WKURXJK$RIWKH
DGGUHVVEXV7KHE\WHWREHRXWSXWLVSODFHGRQWKHGDWDEXVDQGZULWWHQWRD
VHOHFWHGSHULSKHUDOGHYLFH)LQDOO\WKHUHJLVWHUSDLU+/LVLQFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
4 16 (4, 5, 3, 4) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVXQNQRZQ
=LVVHWLI%± UHVHWRWKHUZLVH
+LVXQNQRZQ
39LVXQNQRZQ
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH07HWKHFRQWHQWVRIUHJLVWHU%DUH10HWKH
FRQWHQWVRIWKH+/UHJLVWHUSDLUDUHDQGWKHFRQWHQWVRIPHPRU\
DGGUHVV1000HDUHWKHQDIWHUWKHHH[HFXWLRQRIOUTIUHJLVWHU%
FRQWDLQV0FHWKH+/UHJLVWHUSDLUFRQWDLQV1001HDQGE\WH59HLVZULWWHQ
WRWKHSHULSKHUDOGHYLFHPDSSHGWR,2SRUWDGGUHVV07H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
27,5
1RGTCVKQP &+/%%+/+/
1R%QFG 27,5
1 1 1 0 1 1 0 1 ED
1 0 1 1 0 0 1 1 B3
&GUETKRVKQP 7KHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUHSODFHGRQWKHDGGUHVVEXVWRVHOHFW
DORFDWLRQLQPHPRU\7KHE\WHFRQWDLQHGLQWKLVPHPRU\ORFDWLRQLVWHPSR
UDULO\VWRUHGLQWKH&387KHQDIWHUWKHE\WHFRXQWHU%LVGHFUHPHQWHGWKH
FRQWHQWVRIUHJLVWHU&DUHSODFHGRQWKHERWWRPKDOI$WKURXJK$RIWKH
DGGUHVVEXVWRVHOHFWWKH,2GHYLFHDWRQHRISRVVLEOHSRUWV5HJLVWHU%
PD\EHXVHGDVDE\WHFRXQWHUDQGLWVGHFUHPHQWHGYDOXHLVSODFHGRQWKHWRS
KDOI$WKURXJK$RIWKHDGGUHVVEXVDWWKLVWLPH1H[WWKHE\WHWREH
RXWSXWLVSODFHGRQWKHGDWDEXVDQGZULWWHQWRWKHVHOHFWHGSHULSKHUDOGHYLFH
7KHQUHJLVWHUSDLU+/LVLQFUHPHQWHG,IWKHGHFUHPHQWHG%UHJLVWHULVQRW
]HURWKH3URJUDP&RXQWHU3&LVGHFUHPHQWHGE\WZRDQGWKHLQVWUXFWLRQLV
UHSHDWHG,I%KDVJRQHWR]HURWKHLQVWUXFWLRQLVWHUPLQDWHG,QWHUUXSWVDUH
UHFRJQL]HGDQGWZRUHIUHVKF\FOHVDUHH[HFXWHGDIWHUHDFKGDWDWUDQVIHU
Note: When B is set to zero prior to instruction execution, the instruc-
tion outputs 256 bytes of data.
,I%
0&\FOHV 76WDWHV 0+](7
5 21 (4, 5, 3, 4, 5) 5.25
,I%
0&\FOHV 76WDWHV 0+](7
4 16 (4, 5, 3, 4) 4.00
%QPFKVKQP$KVU#HHGEVGF
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
6LVXQNQRZQ
=LVVHW
+LVXQNQRZQ
39LVXQNQRZQ
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH07HWKHFRQWHQWVRIUHJLVWHU%DUH03HWKH
FRQWHQWVRIWKH+/UHJLVWHUSDLUDUH1000HDQGPHPRU\ORFDWLRQVKDYHWKH
IROORZLQJFRQWHQWV
1000H FRQWDLQV51H
1001H FRQWDLQVA9H
1002H FRQWDLQV03H
WKHQDWH[HFXWLRQRIOTIRWKH+/UHJLVWHUSDLUFRQWDLQV1003HUHJLVWHU%
FRQWDLQV]HURDQGDJURXSRIE\WHVLVZULWWHQWRWKHSHULSKHUDOGHYLFH
PDSSHGWR,2SRUWDGGUHVV07HLQWKHIROORZLQJVHTXHQFH
51H
A9H
03H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
287'
1RGTCVKQP &+/%%+/+/
1R%QFG 287'
1 1 1 0 1 1 0 1 ED
1 0 1 0 1 0 1 1 AB
&GUETKRVKQP 7KHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUHSODFHGRQWKHDGGUHVVEXVWRVHOHFWD
ORFDWLRQLQPHPRU\7KHE\WHFRQWDLQHGLQWKLVPHPRU\ORFDWLRQLV
WHPSRUDULO\VWRUHGLQWKH&387KHQDIWHUWKHE\WHFRXQWHU%LV
GHFUHPHQWHGWKHFRQWHQWVRIUHJLVWHU&DUHSODFHGRQWKHERWWRPKDOI$
WKURXJK$RIWKHDGGUHVVEXVWRVHOHFWWKH,2GHYLFHDWRQHRI
SRVVLEOHSRUWV5HJLVWHU%PD\EHXVHGDVDE\WHFRXQWHUDQGLWV
GHFUHPHQWHGYDOXHLVSODFHGRQWKHWRSKDOI$WKURXJK$RIWKH
DGGUHVVEXVDWWKLVWLPH1H[WWKHE\WHWREHRXWSXWLVSODFHGRQWKHGDWDEXV
DQGZULWWHQWRWKHVHOHFWHGSHULSKHUDOGHYLFH)LQDOO\WKHUHJLVWHUSDLU+/LV
GHFUHPHQWHG
0&\FOHV 76WDWHV 0+](7
4 16 (4, 5, 3. 4) 4.00
%QPFKVKQP$KVU#HHGEVGF
6LVXQNQRZQ
=LVVHWLI%± UHVHWRWKHUZLVH
+LVXQNQRZQ
39LVXQNQRZQ
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH07HWKHFRQWHQWVRIUHJLVWHU%DUH10HWKH
FRQWHQWVRIWKH+/UHJLVWHUSDLUDUH1000HDQGWKHFRQWHQWVRIPHPRU\
ORFDWLRQ1000HDUH59HDWH[HFXWLRQRIOUTDUHJLVWHU%FRQWDLQV0FHWKH
+/UHJLVWHUSDLUFRQWDLQV0FFFHDQGE\WH59HLVZULWWHQWRWKHSHULSKHUDO
GHYLFHPDSSHGWR,2SRUWDGGUHVV07H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
27'5
1RGTCVKQP &+/%%+/+/
1R%QFG 27'5
1 1 1 0 1 1 0 1 ED
1 0 1 1 1 0 1 1 BB
&GUETKRVKQP 7KHFRQWHQWVRIWKH+/UHJLVWHUSDLUDUHSODFHGRQWKHDGGUHVVEXVWRVHOHFWD
ORFDWLRQLQPHPRU\7KHE\WHFRQWDLQHGLQWKLVPHPRU\ORFDWLRQLVWHPSR
UDULO\VWRUHGLQWKH&387KHQDIWHUWKHE\WHFRXQWHU%LVGHFUHPHQWHG
WKHFRQWHQWVRIUHJLVWHU&DUHSODFHGRQWKHERWWRPKDOI$WKURXJK$RI
WKHDGGUHVVEXVWRVHOHFWWKH,2GHYLFHDWRQHRISRVVLEOHSRUWV5HJLV
WHU%PD\EHXVHGDVDE\WHFRXQWHUDQGLWVGHFUHPHQWHGYDOXHLVSODFHGRQ
WKHWRSKDOI$WKURXJK$RIWKHDGGUHVVEXVDWWKLVWLPH1H[WWKHE\WH
WREHRXWSXWLVSODFHGRQWKHGDWDEXVDQGZULWWHQWRWKHVHOHFWHGSHULSKHUDO
GHYLFH7KHQUHJLVWHUSDLU+/LVGHFUHPHQWHGDQGLIWKHGHFUHPHQWHG%
UHJLVWHULVQRW]HURWKH3URJUDP&RXQWHU3&LVGHFUHPHQWHGE\WZRDQG
WKHLQVWUXFWLRQLVUHSHDWHG,I%KDVJRQHWR]HURWKHLQVWUXFWLRQLVWHUPL
QDWHG,QWHUUXSWVDUHUHFRJQL]HGDQGWZRUHIUHVKF\FOHVDUHH[HFXWHGDIWHU
HDFKGDWDWUDQVIHU
Note: When B is set to zero prior to instruction execution, the instruc-
tion outputs 256 bytes of data.
,I%
0&\FOHV 76WDWHV 0+](7
5 21 (4, 5, 3, 4, 5) 5.25
,I%
0&\FOHV 76WDWHV 0+](7
4 16 (4, 5, 3, 4) 4.00
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
%QPFKVKQP$KVU#HHGEVGF
6LVXQNQRZQ
=LVVHW
+LVXQNQRZQ
39LVXQNQRZQ
1LVVHW
&LVQRWDIIHFWHG
'ZCORNG ,IWKHFRQWHQWVRIUHJLVWHU&DUH07HWKHFRQWHQWVRIUHJLVWHU%DUH03HWKH
FRQWHQWVRIWKH+/UHJLVWHUSDLUDUH1000HDQGPHPRU\ORFDWLRQVKDYHWKH
IROORZLQJFRQWHQWV
0FFEH FRQWDLQV51H
0FFFH FRQWDLQVA9H
1000H FRQWDLQV03H
WKHQDWH[HFXWLRQRIOTDRWKH+/UHJLVWHUSDLUFRQWDLQ0FFDHUHJLVWHU%
FRQWDLQV]HURDQGDJURXSRIE\WHVLVZULWWHQWRWKHSHULSKHUDOGHYLFH
PDSSHGWR,2SRUWDGGUHVV+LQWKHIROORZLQJVHTXHQFH
03H
A9H
51H
80 =,QVWUXFWLRQ6HW
<%27
7UGT U/CPWCN
80 =,QVWUXFWLRQ6HW