Título: Duda MUY BASICA sobre los registros en Ensamblador Publicado por: ferk93 en 31 Mayo 2008, 17:36 pm Buenas a to2!
Acabo de empezar a estudiar el lenguaje ensamblador y me ha surgido una duda sobre los registros. Es lo mismo un registro de tipo EAX que de tipo AX? Si no es asi, en que se diferencian? Gracias de antemano y prdon x la duda, que se que es algo muy basico. Título: Re: Duda MUY BASICA sobre los registros en Ensamblador Publicado por: euyyn en 1 Junio 2008, 04:48 am Si no recuerdo mal:
EAX y AX no son "tipos" de registros, sino nombres de registros concretos. EAX es el doble de grande que AX (igual que EBX respecto a BX), y además AX es la parte menos significativa de EAX. Creo que era que EAX son 4 bytes, de los cuales los 2 menos significativos "son" AX. La necesidad de ser compatible hacia atrás hace que el ensamblador del x86 sea odioso a más no poder. Cuando todas las aplicaciones de usuario sean Java o .Net, al fin podrán en Intel diseñar un repertorio como Dios manda (como ya hicieron al diseñar el Itanium). Título: Re: Duda MUY BASICA sobre los registros en Ensamblador Publicado por: Rozor en 1 Junio 2008, 17:46 pm -------------- | AH | AL | <--- 2 x 16bit -------------- | AX | <--- 16bit --------------- | EAX | <---- 32 bit --------------- | RAX | <--- 64 bit ---------------- AX = 0x0000 Eso quiere decir que AH vale 0x00 y AL 0x00 si cambiasemos los registros mov AH, 0x4C mov AL, 0x69 entonces cambiaria el valor de AX Al primer movimiento se quedaria en AX = 0x4C00 Al segundo AX = 0x4C69 16 DOS r00lz Título: Re: Duda MUY BASICA sobre los registros en Ensamblador Publicado por: ferk93 en 2 Junio 2008, 16:51 pm Gracias a ambos por vuestra ayuda.
Ahora lo tengo claro. Salu2! |