oicìliS ©
Assembly Intermediário TEXTOS ACESSÓRIOS
Notice: Undefined variable: subtitulo in /home/numaboa.com.br/public_html/informatica/oiciliS/assembler/head.php on line 10
(ver 1.1 de 02.08.03)
|
Este é um assunto que você precisa dominar se pretende examinar dados e a memória de seu computador usando um debugger. Se não, ainda assim o assunto é interessante.
Basicamente, os processadores Intel guardam dados na memória "ao avesso", ou seja, os dados são armazenados byte a byte em ordem reversa.
A coisa se resume no seguinte: um byte apenas será armazenado num endereço de memória mantendo a sequência de bits original - nada muda. Mas um word, composto de por dois bytes, terá seus bytes armazenados em ordem reversa - o byte menos significativo (o segundo) será armazenado primeiro, seguido pelo byte mais significativo (o segundo).
Esta sequência "ao avesso" é chamada de formato "little endian". A sequência na ordem correta é chamada de "big endian" e é usada por outros tipos de processadores.
É meio difícil de explicar - um exemplo torna a coisa bem mais fácil de entender. Digamos que você queira armazenar o valor 248Ch no endereço de memória 400000h. A área de memória teria o seguinte aspecto:
Quando este valor for lido da memória por uma instrução word, tendo como referência o endereço 400000h, os bytes serão lidos em ordem reversa e o registrador word indicado receberá o valor 248Ch. Se o armazenamento ocorre em ordem inversa e a leitura também, não tem com que se preocupar - o computador está fazendo o serviço direitinho. A única coisa é que precisamos saber disto para que, ao visualizarmos diretamente esta área de memória usando um debugger, saibamos que os bytes estão invertidos.
Para reforçar o mecanismo little endian usado pelos processadores Intel, vou exemplificar o armazenamento de um dword, digamos 12345678h também em 400000h:
| 0040 0000 | 78 |
| 0040 0002 | 56 |
| 0040 0004 | 34 |
| 0040 0006 | 12 |
Taí... agora você sabe o que é o little endian e não vai poder ser enganado por ele. O pessoal da Intel tem lá suas razões para usar este processo.
|