Sto cercando di capire come ottenere il numero di elementi nello stack sottraendo il registro sp con bp. Che cosa sto facendo di sbagliato? Ottengo risultato del tutto sbagliatoNASM: Ottieni il numero di elementi nello stack
MOV bp, 0x7E00
MOV sp, bp
PUSH 'A'
PUSH 'B'
PUSH 'C'
POP bx
MOV al, bl
CALL _printchar
POP bx
MOV al, bl
CALL _printchar
MOV bx, sp
SUB bx, bp
ADD bx, 48 ;To get ascii number
MOV al, bl
CALL _printchar
Questa è l'uscita:
CB.
Puoi pubblicare l'output? –
@ 1.618 Ho aggiunto l'uscita –
Suggerimento: non inserire un numero specifico in SP. Stai chiedendo un disastro. Se questo funziona per te; grande. Esistono altri milioni di modi (più sicuri) per scoprire dove si trova effettivamente lo stack. Di nuovo, se questo funziona per te; duh; va bene. Vedo molte preoccupazioni. –