Existe uma maneira de armazenar parte de um valor de 16 bits em uma variável de 8 bits na Assembléia?

StackOverflow https://stackoverflow.com/questions/1512582

Pergunta

Eu criei uma variável que armazena uma variável de 16 bits, e eu estou tring para armazenar a metade superior em uma variável de 8 bits. Como eu faço isso?

EDIT: sua para o IA-32, e eu não acho que eu posso usar registros

EDIT2:. Eu estou autorizado a registros de uso

Foi útil?

Solução

Você pode fazê-lo como este:

mov AX, [var16]
mov [var8], AH

Outras dicas

Como alternativa, você poderia usar o SHR, SHL ou ROR e ROL a mudança de girar os bits em seu registro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top