elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  Eso es bug del hypervisor o del NASM....
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Eso es bug del hypervisor o del NASM....  (Leído 3,061 veces)
ño_ño

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Eso es bug del hypervisor o del NASM....
« en: 15 Julio 2010, 03:17 am »

Hola!

Hoy me he perdido todo el dia antes de intentar probar por bugs y si:

Lo que ocure es que cuando uso codigo de 64 bits en modo de la CPU de 64 bits, con NASM, no me van bien los registros DIL, SIL, no he probado con los AL.... o BPL SPL, porque no tengo tiempo. Por ahora voy a cambiar todo el codigo en donde uso por ejemplo mov AL, DIL, con mov AX, DI y para las demas instrucciones lo mismo voy a hacer para que funcione, si no, no va. No me reinicia ni nada, tampoco provoca interrupciones, simplemente el programa se vuelve impredecible.

Bueno, a ver si a alguien otro le ha ocurrido lo mismo.

Ciao, campeones.


En línea

ño_ño

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Eso es bug del hypervisor o del NASM....
« Respuesta #1 en: 15 Julio 2010, 03:58 am »

11.1 Register Names in 64-bit Mode

NASM uses the following names for general-purpose registers in 64-bit mode, for 8-, 16-, 32- and 64-bit references, respecitively:

     AL/AH, CL/CH, DL/DH, BL/BH, SPL, BPL, SIL, DIL, R8B-R15B
     AX, CX, DX, BX, SP, BP, SI, DI, R8W-R15W
     EAX, ECX, EDX, EBX, ESP, EBP, ESI, EDI, R8D-R15D
     RAX, RCX, RDX, RBX, RSP, RBP, RSI, RDI, R8-R15

This is consistent with the AMD documentation and most other assemblers. The Intel documentation, however, uses the names R8L-R15L for 8-bit references to the higher registers. It is possible to use those names by definiting them as macros; similarly, if one wants to use numeric names for the low 8 registers, define them as macros. The standard macro package altreg (see section 5.1) can be used for this purpose.

Eso explica supongo los problemas que tengo. En la documentacion de Intel no es mas claro que eso.

Total, puesto que para usar un registro R* de menos bits, casi siempre se me desusa el registro entero, pues simplemente voy a evitar esos low bits references.

Adios!


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[NASM] String Reverse =P
ASM
Binary_Death 0 3,596 Último mensaje 28 Noviembre 2010, 19:23 pm
por Binary_Death
NASM en Linux
ASM
Stroncio 5 6,334 Último mensaje 28 Enero 2011, 02:01 am
por Stroncio
que tan malo es programar usando WinMain@16 con nasm en windows?
ASM
Belial & Grimoire 4 5,188 Último mensaje 3 Julio 2012, 08:27 am
por x64core
logre un socket en nasm jeje
ASM
Belial & Grimoire 3 3,306 Último mensaje 21 Julio 2013, 00:25 am
por xv0
Nasm - tablas de multiplicar
ASM
NuevoUsuario 7 6,546 Último mensaje 12 Octubre 2021, 21:57 pm
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines