Кодирование программы

Для загрузки программы в память системы все команды должны быть преобразованы в объектные коды, т.е. представлены в виде последовательностей 0 и 1. При машинной трансляции программа в машинных кодах выдается на каком-либо носителе, с которого она сразу может вводиться в память. Кроме того, выводиться распечатка (листинг), содержащая исходную программу в мнемокодах и соответствующие им объектные коды. Для микропроцессоров стало традицией, что распечатка объектной программы выдается в шестнадцатеричной системе кодирования (в HEX – кодах).

Применение шестнадцатеричных кодов при восьмиразрядных машинных словах имеет то преимущество, что обеспечивает очень компактную запись: каждая команда записывается всего двумя символами

Все команды микропроцессора КР.580ИK80A можно свести в одну таблицу, строки которой представляют собой старшие разряды (тетрады) кода операции, а столбцы – младшие разряды. На пересечении указаны мнемокоды команд, соответствующих образовавшимся комбинациям (табл. 2.7).

Таблица 2.7. Машинные коды команд микропроцессора К580

  Вторая тетрада (HEX)
               
    NOP LXI B <B2> <B3> STAX B INX B INR B DCR B MVI B <B2> RLC
    --- LXI H <B2> <B3> STAX D INX D INR D DCR D MVI D <B2> RAL
    --- LXI H <B2> <B3> SHILD <LADR> <HADR> INX H INR H DCR H MVI H <B2> DAA
    --- LXI SP <B2> <B3> STA <LADR> <HADR> INX SP INR M DCR M MVI M <B2> STC
  MOV B,B MOV B,C MOV B,D MOV B,E MOV B,H MOV B,L MOV B,M MOV B,A
  MOV D,B MOV D,C MOV D,D MOV D,E MOV D,H MOV D,L MOV D,M MOV D,A
  MOV H,B MOV H,C MOV H,D MOV H,E MOV H,H MOV H,L MOV H,M MOV H,A
  MOV M,B MOV M,C MOV M,D MOV M,E MOV M,H MOV M,L MOV M,M MOV M,A
  ADD B ADD C ADD D ADD E ADD H ADD L ADD M ADD A
  SUB B SUB C SUB D SUB E SUB H SUB L SUB M SUB A
A ANA B ANA C ANA D ANA E ANA H ANA L ANA M ANA A
B ORA B ORA C ORA D ORA E ORA H ORA L ORA M ORA A
C RNZ POP B JMZ <LARD> <HARD> JMP <LARD> <HARD> CNZ <LARD> <HARD> PUSH B ADI <B2> RST 0
D RNC POP D JMC <LARD> <HARD> OUT <PORT №> CNC <LARD> <HARD> PUSH D SUI <B2> RST 2
E RPO POP H JPO <LARD> <HARD> XTHL CPO <LARD> <HARD> PUSH H ANI <B2> RST 4
F RP POP PSW JP <LARD> <HARD> DI CP <LARD> <HARD> PUSH PSW ORI <B2> RST 6

Продолжение табл. 2.7

Вторая тетрада (HEX)
      A B C D E F
  --- DAD B LDAX B DCX B INR C DCR C MVI C <B2> RRC
  --- DAD D LDAX D DCX D INR E DCR E MVI E <B2> RAR
    --- DAD H LHLD <LADR> <HADR> DCX H INR L DCR L MVI L <B2> CMA
    --- DAD SP LHLA <LADR> <HADR> DCX SP INR A DCR A MVI A <B2> CMC
  MOV C,B MOV C,C MOV C,D MOV C,E MOV C,H MOV C,L MOV C,M MOV C,A
  MOV E,B MOV E,C MOV E,D MOV E,E MOV E,H MOV E,L MOV E,M MOV E,A
  MOV L,B MOV L,C MOV L,D MOV L,E MOV L,H MOV L,L MOV L,M MOV L,A
  MOV A,B MOV A,C MOV A,D MOV A,E MOV A,H MOV A,L MOV A,M MOV A,A
  ADC B ADC C ADC D ADC E ADC H ADC L ADC M ADC A
  SBB B SBB C SBB D SBB E SBB H SBB L SBB M SBB A
A XRA B XRA C XRA D XRA E XRA H XRA L XRA M XRA A
B CMP B CMP C CMP D CMP E CMP H CMP L CMP M CMP A
C RZ RET JZ <LADR> <HADR>   --- JZ <LADR> <HADR> JZ <LADR> <HADR> ACI <B2> RST 1
D RC   --- JC <LADR> <HADR> IN <PORT №> CC <LADR> <HADR>   --- SBI <B2> RST 3
E RPE PCHL JPE <LADR> <HADR> HCHG CPE <LADR> <HADR>   --- XRI <B2> RST 5
F RM SPHL JV <LADR> <HADR> EI CM <LADR> <HADR>   --- CPI <B2> RST 7


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: