Operácie

ASM80 programy: Rozdiel medzi revíziami

Zo stránky SensorWiki

Balogh (diskusia | príspevky)
Bez shrnutí editace
Balogh (diskusia | príspevky)
Bez shrnutí editace
Riadok 33: Riadok 33:
0008  32 0F 00              STA  000FH   
0008  32 0F 00              STA  000FH   
000B  76                    HLT
000B  76                    HLT
</source>
<source lang="asm">
CISLO EQU 0x000D
ORG 000DH 
DB  02H,03H,00H
 
ORG 0000 
START:   
LDA  000DH 
MOV  B,A 
LDA  000EH 
ADD  B 
STA  000FH 
HLT
</source>
</source>


Riadok 45: Riadok 61:


</source>
</source>


<source lang="asm">
<source lang="asm">

Verzia z 21:12, 1. november 2017

Nulovanie pamäťového miesta

Intuitívne MVI A,00h ale lepšie je SUB A, ktoré je kratšie a aj nastaví príznaky. Porovnajte.

myX 	equ 0010h
          
        org 0000h
        mvi a,55h
        sta myX
        sub a		;mvi a,00h
        sta myX
        hlt


Súčet dvoch 8-bitových čísel

Prvý aj druhý sčítanec sú uložené v pamäti, výsledok chceme tiež tam. Ako vieme, že výsledok je OK?

                    CISLO     EQU 0x000D 
000D                          ORG 000DH   
000D   02 03 00               DB  02H,03H,00H
   
0000                          ORG 0000   
0000                START:    
0000   3A 0D 00               LDA  000DH   
0003   47                     MOV  B,A   
0004   3A 0E 00               LDA  000EH   
0007   80                     ADD  B   
0008   32 0F 00               STA  000FH   
000B   76                     HLT
	CISLO	EQU 0x000D 
			ORG 000DH   
			DB  02H,03H,00H
   
			ORG 0000   
START:    
			LDA  000DH   
			MOV  B,A   
			LDA  000EH   
			ADD  B   
			STA  000FH   
			HLT
                LXI H, 000Dh
                MOV A,M    ; prvy scitanec
                INX H
                ADD M      ; druhy scitanec
                INX H
                MOV M,A    ; uloz vysledok
                HLT