Dúvida questão 6a

3 views
Skip to first unread message

Douglas Coutinho

unread,
Dec 6, 2010, 6:32:01 PM12/6/10
to comp...@googlegroups.com
Eu não entendi pq a resposta é 000001FF ao invés de 5F2011FF
pq esse valor ñ é somado ao início do programa?

Fernando Silva

unread,
Dec 6, 2010, 6:41:02 PM12/6/10
to comp...@googlegroups.com
Douglas,

No caso, quando usamos endereçamento segmentado, a base do segmento(no caso da questão 5F201000H) é guardada, e é sempre somada com o valor que chamamos de deslocamento.

No caso de um segmento de código, uma instrução vai ser endereçada pela combinação dos valores dos registradores CS + EIP, no caso o CS guarda a base do segmento, e o EIP vai servir de deslocamento, então quando se pergunta:

1) Qual valor de EIP para acessar uma instrução que está a 512 bytes do inicio do segmento?

O valor do EIP é 000001FF porque esse valor vai ser somado ao valor do CS(que é 5F201000), para assim formar o endereço 5F2011FF que é o endereço absoluto da instrução.

Se você ainda tiver dúvidas é só falar, mas dá uma olhada na lista, que eu dei uma explicação bem passo-a-passo dessa questão para outra pessoa.
Reply all
Reply to author
Forward
0 new messages