1 операции над байтами
N Z C V
0003DD SWAB перестановка байтов * * 0 0
*050DD CLR(B) очистка (d) <=0 0 1 0 0
*051DD COM(B) побитная инверсия (d) <= (|d) * * 0 0
*052DD INC(B) прибавление 1 (d) <=(d)+1 * * *-
*053DD DEC(B) вычитание 1 (d) <=(d)+1 * * *-
*054DD NEG(B) изменение знака (d) <=-(d) * * * *
*055DD ADC(B) прибавить перенос (d)<=(d)+C * * * *
*056DD SBC(B) вычесть перенос (d)<=(d)-C * * * *
*057DD TST(B) проверка (d)<=(d) * * 0 0
*060DD ROR(B) циклич. сдвиг вправо => C,d * * * *
*061DD ROL(B) циклич. сдвиг влево C,d <= * * * *
*062DD ASR(B) арифм. сдвиг вправо (d)<=(d)/2 * * * *
*063DD ASL(B) арифм. сдвиг влево (d)<=(d)*2 * * * *
*067DD SXT расширить знак N=0 (d)<=0 0 1 0- N=1 (d)<=177777 1 0 0-
Двух операторные команды
КОП | SS | DD | |||||||||||||
15 | 12 | 11 | 6 | 5 | 0 | ||||||||||
N S V C
*1SSDD MOV(B) переслать (d)<=(s) * * 0-
*2SSDD CMP(B) сравнить (s)-(d) * * * *
*3SSDD BIT(B) проверить разряды (s)/\(d) * * 0 -
*4SSDD BIC(B) очистить разряды (d)<=(|s)/\(d) * * 0 -
*5SSDD BIS(B) установить разряды (d)<=(s)\/(d) * * 0 -
06SSDD ADD сложить (d)<=(s)+(d) * * * *
074RSS XOR исключающее или (s)<= (r )\\(s) * * 0 -
16SSDD SUB вычесть (d)<=(d)-(s) * * * *
Операции с разрядами PSW
Базовый КОП =240 | 0/1 | N | Z | V | C | ||||||||||
15 | 6 | 7 | 4 | 3 | 2 | 1 | 0 | ||||||||
Очистить | |||||||||||||||
000241 CLC C | - | - | - | 0 | |||||||||||
000242 CLV V | - | - | 0 | - | |||||||||||
000244 CLZ Z | - | 0 | - | - | |||||||||||
000250 CLN N | 0 | - | - | - | |||||||||||
000257 CCC N Z V C | 0 | 0 | 0 | 0 | |||||||||||
Установить | |||||||||||||||
000261 SEC C | - | - | - | 1 | |||||||||||
000262 SEV V | - | - | 1 | - | |||||||||||
000264 SEZ Z | - | 1 | - | - | |||||||||||
000270 SEN N | 1 | - | - | - | |||||||||||
000277 SCC N Z V C | 1 | 1 | 1 | 1 | |||||||||||
0 комментариев