You are on page 1of 8

---------------------------------------------------------------| | | | | Intel | | | | 88888 000 88888 5555555 A | | 8 8 0 0 8 8 5 A A | | 8 8 0 0 0 8 8 5 A A | | 88888 0 0 0 88888 555555 AAAAAAA | | 8 8 0 0 0 8 8 5 A A | | 8 8 0 0 8 8 5 A A | | 88888 000 88888 555555 A A | | | | 8085A

MICROPROCESSOR Instruction Set Summary | | | | | | | | | | | | _________ _________ | | _| \__/ |_ | | -- !" |_|" #0|_| $cc %&5$' | | _| |_ | | -- !( |_|( )*|_| +O,- .-| | _| |_ | | .-- RESE/ O0/ |_|) )8|_| +,-A -| | _| |_ | | .-- SO- |_|# )1|_| C,2 %O0/' -| | _| |_ ________ | | -- SI- |_|5 )3|_| RESE/ I4 .-| | _| |_ | | -- /RAP |_|3 )5|_| REA-5 .-| | _| |_ _ | | -- RS/ 165 |_|1 )#|_| IO/M -| | _| |_ | | -- RS/ 365 |_|8 ))|_| S" -| | _| |_ __ | | -- RS/ 565 |_|* )(|_| R- -| | _| |_ __ | | -- I4/R |_|"0 8085A )"|_| 7R -| | ____ _| |_ | | .-- I4/A |_|"" )0|_| A,E -| | _| |_ | | .-- A-0 |_|"( (*|_| S0 -| | _| |_ | | .-- A-" |_|") (8|_| A"5 -| | _| |_ | | .-- A-( |_|"# (1|_| A"# -| | _| |_ | | .-- A-) |_|"5 (3|_| A") -| | _| |_ | | .-- A-# |_|"3 (5|_| A"( -| | _| |_ | | .-- A-5 |_|"1 (#|_| A"" -| | _| |_ | | .-- A-3 |_|"8 ()|_| A"0 -| | _| |_ |

| .-- A-1 |_|"* ((|_| A* -| | _| |_ | | %8n9' $ss |_|(0 ("|_| A8 -| | |______________________| | | | | | |--------------------------------------------------------------|

The Intel 8085 is an 8-bit microprocessor introduced by Intel in 1977. It was binarycompatible with the more-famous Intel 8080 but required less supporting hardware thus allowing simpler and less e!pensi"e microcomputer systems to be built. The #$# in the model number came from the fact that the 808$ required only a %$-"olt &'( power supply rather than the %$' -$' and %1)' supplies the 8080 needed. *oth processors were sometimes used in computers running the +,-. operating system and the 808$ later saw use as a microcontroller &much by "irtue of its component count reducing feature(. *oth designs were eclipsed for des/top computers by the compatible but more capable 0ilog 080 which too/ o"er most of the +,-. computer mar/et as well as ta/ing a large share of the booming home computer mar/et in the early-to-mid-1980s. The 808$ had a "ery long life as a controller. 1nce designed into such products as the 23+tape controller and the 'T100 "ideo terminal in the late 1970s it continued to ser"e for new production throughout the life span of those products &generally many times longer than the new manufacture lifespan of des/top computers(.

Contents
4hide5

1 2escription o 1.1 ,rogramming model 1.1.1 6egisters 1.1.) +ommands-instructions 1.1.).1 8-bit instructions 1.1.).) 17-bit operations 1.1.8 Input-output scheme o 1.) 2e"elopment system ) 9pplications 8 .+:-8$ ;amily < 3ducational =se $ :imulators 7 6eferences 7 3!ternal lin/s

[edit] Description

i808$ microarchitecture. The 808$ is a con"entional "on >eumann design based on the Intel 8080. =nli/e the 8080 it had no state signals multiple!ed onto the data bus but the 8-bit data bus was instead multiple!ed with the lower part of the 17-bit address bus &in order to limit the number of pins to <0(. The processor was designed using n.1: circuitry and the later #?# "ersions were implemented in Intel@s enhanced n.1: process called ?.1: originally de"eloped for fast static 69. products. The 808$ used appro!imately 7 $00 transistors415. The 808$ incorporated the functionality of the 8))< &cloc/ generator( and the 8))8 &system controller( increasing the le"el of integration. 9 downside compared to similar contemporary designs &such as the 080( was the fact that the buses required demultiple!ing howe"er address latches in the Intel 81$$ 88$$ and 87$$ memory chips allowed a direct interface so an 808$ along with these chips was almost a complete system. The 808$ had e!tensions to support new interruptsA It had three mas/able interrupts &6:T 7.$ 6:T 7.$ and 6:T $.$( one >on-.as/able interrupt &T69,( and one e!ternally ser"iced interrupt &I>T6(. The 6:T n.$ interrupts refer to actual pins on the processor-a feature which permitted simple systems to a"oid the cost of a separate interrupt controller.

Bi/e the 8080 the 808$ could accommodate slower memories through e!ternally generated wait states &pin 8$ 6392C( and had pro"isions for 2irect .emory 9ccess &2.9( using ?1B2 and ?B29 signals &pins 89 and 88(. 9n impro"ement o"er the 8080 was that the 808$ can itself dri"e a pieDoelectric crystal directly connected to it and a built in cloc/ generator generates the internal high amplitude two-phase cloc/ signals at half the crystal frequency &a 7.1< .?D crystal would yield a 8.07 .?D cloc/ for instance(.

[edit] Programming model


Eith a slighly higher integration and a single $' power &using depletion mode load n.1:( the 808$ was a binary compatible follow up on the 8080 the successor to the original Intel 8008. The 8080 and 808$ used the same basic instruction set as the 8008 &de"eloped by +omputer Terminal +orporation( and they were source code compatible with their predecessor. ?owe"er the 8080 added se"eral useful and handy 17-bit operations abo"e the 8008 instruction set while the 808$ added only a few relati"ely minor instructions abo"e the 8080 set. [edit] Registers The processor had se"en 8-bit registers &9 * + 2 3 ? and B( where 9 was the 8-bit accumulator and the other si! could be used as either byte-registers or as three 17-bit register pairs &*+ 23 ?B( depending on the particular instruction. :ome instructions also enabled ?B to be used as &a limited( 17-bit accumulator. It also had a 17-bit stac/ pointer to memory &replacing the 8008@s internal stac/( and a 17-bit program counter. [edit] Commands/instructions Bi/e in many other 8-bit processors all instructions were encoded in a single byte &including register-numbers but e!cluding immediate data( for simplicity. :ome of them were followed by one or two bytes of data which could be an immediate operand a memory address or a port number. Bi/e larger processors it had automatic +9BB and 63T instructions for multi-le"el procedure calls and returns &which could e"en be conditionally e!ecuted li/e Fumps( and instructions to sa"e and restore any 17-bit register-pair on the machine stac/. There were also eight one-byte call instructions &6:T( for subroutines located at the fi!ed addresses 00h 08h 10h ... 88h. These were intended to be supplied by e!ternal hardware in order to in"o/e a corresponding interrupt-ser"ice routine but were also often employed as fast system calls. The most sophisticated command was GT?B which was used for e!changing the register pair ?B with the "alue stored at the address indicated by the stac/ pointer.
[edit] 8-bit instructions

.ost 8-bit operations could only be performed on the 8-bit accumulator &the 9 register(. ;or dyadic 8-bit operations the other operand could be either an immediate "alue another 8-bit register or a memory cell addressed by the 17-bit register pair ?B. 2irect

copying was supported between any two 8-bit registers and between any 8-bit register and a ?B-addressed memory cell. 2ue to the regular encoding of the .1'-instruction &using a quarter of a"ailable opcode space( there were redundant codes to copy a register into itself &.1' * * for instance( which was of little use e!cept for delays. ?owe"er what would ha"e been a copy from the ?B-addressed cell into itself &i.e. .1' . .( was instead used to encode the ?BT instruction &halting e!ecution until an e!ternal reset or interrupt(.
[edit] 16-bit operations

9lthough the 808$ was generally an 8-bit processor it also had limited abilities to perform 17-bit operationsA 9ny one of the three 17-bit register pairs &*+ 23 ?B( could be loaded with an immediate 17-bit "alue &using BGI( incremented or decremented &using I>G and 2+G( or added to ?B &using 292(. The G+?H operation e!changed the "alues of ?B and 23. *y adding ?B to itself it was possible to achie"e the same result as a 17-bit arithmetical left shift with one instruction. The only 17 bit instructions that affect any flag is 292 which sets the +C &carry( flag in order to allow for programmed )<-bit or 8)-bit arithmetics &or larger( needed to implement floating point arithmetics for instance. [edit] Input/output sc eme The 808$ supported up to )$7 input-output &I-1( ports accessed "ia dedicated I-1 instructionsIta/ing port addresses as operands. This I-1 mapping scheme was regarded as an ad"antage as it freed up the processor@s limited address space. .any +,= architectures instead use a common address space without the need for dedicated I-1 instructions although a drawbac/ in such designs may be that special hardware must be used to insert wait states as peripherals are often slower than memory. ?owe"er in some simple 8080 computers I-1 was indeed addressed as if they were memory cells #memory mapped# lea"ing the I-1 commands unused. I-1 addressing could also sometimes employ the fact that the processor would output the same 8-bit port address to both the lower and the higher address byte &i.e. I> 0$h would put the address 0$0$h on the 17-bit address bus(. :imilar I-1-port schemes were used in the 8080-compatible 0ilog 080 as well as the closely related !87 families of microprocessors.

[edit] De!elopment s"stem


Intel produced a series of de"elopment systems for the 8080 and 808$ /nown as the ,ersonal 2e"elopment :ystem. The original ,2: was a large bo! &in the Intel corporate blue colour( which included a +,= and monitor and used 8 inch floppy dis/s. It ran the I:I: operating system and could also operate an emulator pod and 3,61. programmer. The later i,2: was a much more portable unit featuring a small green screen and a $J inch floppy dis/ dri"e and ran the I:I:-II operating system. It could also accept a second 808$ processor allowing a limited form of multi-processor operation where both +,=s shared the screen /eyboard and floppy dis/ dri"e. In addition to an 8080-808$ assembler Intel produced a number of compilers including ,B-.-80 and ,ascal languages and a set

of tools for lin/ing and statically locating programs to enable them to be burnt into 3,61.s and used in embedded systems. The hardware support changes were announced and supported but the software upgrades were not supported by the assembler user manual or any other means. 9t times it was claimed they were not tested when that was false.

[edit] #pplications
;or the e!tensi"e use of 808$ in "arious applications the microprocessor is pro"ided with an instruction set which consists of "arious instructions such as .1' 922 :=* K., etc. These instructions are written in the form of a program which is used to perform "arious operations such as branching addition subtraction bitwise logical and bit shift operations. .ore comple! operations and other arithmetic operations must be implemented in software. ;or e!ample multiplication is implemented using a multiplication algorithm. The 808$ processor has found marginal use in small scale computers up to the )1st century. The T6:-80 .odel 100 line uses a 80+8$. The +.1: "ersion 80+8$ of the >.1:-?.1: 808$ processor has-had se"eral manufacturers and some "ersions &eg. Tundra :emiconductor +orporation@s +980+8$*( ha"e additional functionality eg. e!tra machine code instructions. 1ne niche application for the rad-hard "ersion of the 808$ has been in on-board instrument data processors for se"eral >9:9 and 3:9 space physics missions in the 1990s and early )000s including +663: ,olar ;9:T +luster ?3::I :oFourner &ro"er(4)5 and T?3.I:. The :wiss company :9I9 used the 808$ and the 808$-) as the +,=s of their ,+91 line of programmable logic controllers during the 1980s. :ee alsoA +omparison of embedded computer systems on board the .ars ro"ers

[edit] $C%-85 &amil"


The 808$ +,= was only one part of a much larger family of chips de"eloped by Intel for building a complete system. 9lthough the 808$ +,= itself was not a great success many of these support chips &or their descendents( later found their use in combination with the 8087 microprocessor and are still in use today although not as the chips themsel"es but with their equi"alent functionality embedded into larger 'B:I chips namely the #:outhbridge# chips of modern ,+s.

8007-6am controller 808$-+,= 81$$-69.% 8 I-1 ,orts%Timer 81$7-69.% 8 I-1 ,orts%Timer 818$-:69. 8)0)-2ynamic 69. +ontroller 8)08-2ynamic 69. +ontroller

8)0$-1 1f 8 *inary 2ecoder 8)07-3rror 2etection L +orrection =nit 8)07-269. +ontroller 8)10-TTB To .1: :hifter L ?igh 'oltage +loc/ 2ri"er 8)1)-8 *it I-1 ,ort 8)17-< *it ,arallel *idirectional *us 2ri"er 8)18-8)19-*us +ontroller 8)))-2ynamic 69. 6efresh +ontroller 8))7-< *it ,arallel *idirectional *us 2ri"er 8)81-9rithmetic ,rocessing =nit 8)8)-;loating ,oint ,rocessor 8)87-2.9 +ontroller 8)$1-+ommunication +ontroller 8)$8-,rogrammable Inter"al Timer 8)$<-,rogrammable Inter"al Timer 8)$$-,rogrammable ,eripheral Interface 8)$7-.ultifunction :upport +ontroller 8)$7-2.9 +ontroller 8)$9-,rogrammable Interrupt +ontroller 8)71-,rogrammable ;loppy 2is/ +ontroller 8)7)-:ingle-2ouble 2ensity ;loppy 2is/ +ontroller 8)78-,rogrammable ?2B+-:2B+ ,rotocol +ontroller 8)7<-.ulti-,rotocol :erial +ontroller 8)7$-+6T +ontroller 8)77-:mall :ystem +6T +ontroller 8)78-,rogrammable Mey*oard Interface 8)79-Mey*oard-2isplay +ontroller 8)8)-8-bit >on-In"erting Batch with 1utput *uffer 8)88-8-bit In"erting Batch with 1utput *uffer 8)91-H,I* Tal/er-Bistener 8)9)-H,I* +ontroller 8)98-H,I* Transcei"er 8)9<-2ata 3ncryption-2ecryption =nit%1 1-, ,ort 8)9$-2ot .atri! ,rinter +ontroller 8)97-H,I* Transcei"er 8)97-H,I* Transcei"er 88$$-17 88<-bit &)0<8 ! 8( 61. with I-1 870<-<097-bit &$1) ! 8( ,61. 870)-)M-bit &)7$ ! 8 ( ,61. 87$$-3,61.%) I-1 ,orts

[edit] 'ducational (se


In many engineering schools in :yria Tur/ey *angladesh Iran India ,a/istan *raDil 6epublic of .acedonia .e!ico Hermany Hreece ?ungary ,anama >epal .alaysia

and *osnia and ?erDego"ina4)5 the 808$ processor is popularly used in many introductory microprocessor courses.

[edit] %imulators
808$ simulators e!ist aplenty for educational use. ;reely a"ailable open source "ariants include H>=:im808$ and H:im8$485 wor/ing on both H>=-Binu! and Eindows a freely a"ailable web based simulator &including assembler( can be found here. +losed source freeware simulators for the .icrosoft Ein8) platform include Ein8$ 4<5 &which also emulates undocumented operations of the chip( and :im808$.

[edit] Re)erences

You might also like