ich versuche, eine Verzweigungstabelle 8086 in der Montage zu tunVerzweigungstabelle in der Montage 8086
ich es geschrieben habe:
org 100h
; START THE PROGRAM
mov si, 1
jmp cs:table[si]
table dw C1, C2, C3
C1:
add bx, 1
jmp EXIT
C2:
add bx, 2
jmp EXIT
C3:
add bx, 3
jmp EXIT
C4:
add bx, 4
jmp EXIT
; EXIT PRORGRAM
EXIT:
mov ah, 0
int 16h
ret
Der Code funktioniert nicht, es ist Sprung auf die falsche Bezeichnung.
Jemand kann mir ein Beispiel geben oder meinen Code korrigieren?
Erinnern Sie sich daran, dass jeder Eintrag in der Tabelle zwei Bytes lang ist, daher muss der Index vorher mit 2 multipliziert werden. – fuz