2 db szám kivonása sms32v50 el

2 db szám kivonása sms32v50 el
2011-05-07T17:34:44+02:00
2011-05-07T21:03:58+02:00
2022-11-21T19:45:37+01:00
Sanyi20
Helló!
Az lenne a problémám hogy amikor kiakarom írni a VDU-ra a végeredmény egy négyzetet ír ki nem az eredmény pl.: 8-2=6 nál nem 6 ír ki ha nem 1 négyzetet, nem tudom mi lehet a gond.
Itt a program:
; ----- A veremben ad át paramétereket az eljárásnak
jmp start
db c0
start:
MOV AL,8
PUSH AL
MOV BL,2
PUSH BL

CALL 60
POP BL
POP AL ; Itt az eredmény
mov bl,[02]
MOV [bl],al ; Itt az eredmény

; ----- Eljárás két szám kivonására
; A paraméterek a veremben vannak
; POP-pal levesszük a paramétereket a veremről
; Elvégezzük az összeadást
; PUSH-sal visszatesszük a veremre az eredményt
ORG 60 ; Programkód a 60-as címtől
POP DL ; Visszatérési cím (!)
POP BL ; Egyik paraméter
POP AL ; Másik paraméter
SUB AL,BL
PUSH AL ; Eredmény. DE: a PUSH-ok száma meg kell ;egyezzen
PUSH AL ; a POP-ok számával
PUSH DL ; a visszatérési cím (!)
RET
; --------------------------------------------------------------
END

A másik gondom az hogy nem tudom hogy kell megoldani azt hogy be kérjek billentyűzetről 2 db 8 bites és azokkal elvégezni a kivonást.
Kérlek segítsetek.
Üdv.:Sanyi
Mutasd a teljes hozzászólást!
csak nem tudom hogy csináljak a 4 db bekért számból 2db kétjegyűt

Pl.

1,2,3,4 -ből 12,34
Az elsőt és a harmadikat megszorzod tízzel és hozzáadod a másodikat ill. a negyediket.

(1*10) +2 = 12 (3*10) +4 = 34
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd