2017-10-15 8 views
1

Est-il possible de pousser une valeur de 8 bits dans la pile? NASM donne une erreur quand j'essaye de pousser AL à la pile; plus tard, j'ai découvert que c'était parce que la pile contient des valeurs de 16 bits. Quelle serait la bonne méthode de pousser une valeur de 8 bits dans la pile?x86 - Pousser la valeur de 8 bits à empiler

(Ceci est pour le 8086)

Répondre

3

Vous ne pouvez pas pousser une valeur 8 bits sur la pile. La façon la plus sensée est de pousser tout le registre 16 bits correspondant sur la pile:

push ax 

Notez que cela pousse un octet d'ordure dans ah en plus de l'un octet que vous vouliez écrire, mais cela ne devrait pas problème.

+0

Oh wow, totalement oublié à ce sujet; Merci –