Foro de elhacker.net

Programación => ASM => Mensaje iniciado por: x64core en 10 Enero 2012, 06:31 am



Título: DUDA sobre Carry
Publicado por: x64core en 10 Enero 2012, 06:31 am
Buenas :)
Tengo problemas ayer comprendi parecia que comprendi como funcionaba la bandera carry
pero ahora se me a ido de la mente :P
estoy haciendo pruebas de como funciona y no es como creo que debe funcionar:

MOV EAX,0Ch
ADD EAX,1Ch

creia que eso hiba a poner la bandera carry a 1 :/
ya que:

0C =  0000 1100
1C =  0001 1100


Título: Re: DUDA sobre Carry
Publicado por: Arkangel_0x7C5 en 11 Enero 2012, 12:05 pm
Esa bandera no se pone uando se desborda un registro?
Si fuera asi, en tu ejemplo solo saltaría si usaras los registros de 8 bits

Saludos


Título: Re: DUDA sobre Carry
Publicado por: .:UND3R:. en 12 Enero 2012, 03:33 am
La bandera Carry o de Acarreo (CF), se activa cuando el resultado de una operación aritmética sin signo es demasiado grande para caber en el destino:

Código:
 01100
 11100
101000

vemos que MSB (More significative bit) es desplazado hacia la bandera Acarreo siempre y cuando no caiga en el registro
Citar
                          EAX
                                        AX                         
0000000000000000|0000000000000000
                                 AH           AL
                             00000000 00000000

como el registro de propósito general es de 32 bit puede almacenar esa cantidad y la cantidad total del producto de la suma son 6 bit.

en caso que el registro no pudiera almacenar la cantidad de bit necesarios se activaría la bandera Acarreo

Saludos


Título: Re: DUDA sobre Carry
Publicado por: x64core en 12 Enero 2012, 07:24 am
thanks, me confunde la carry y la overflow...


Título: Re: DUDA sobre Carry
Publicado por: .:UND3R:. en 12 Enero 2012, 16:24 pm
Recordar que la gran diferencia:

Acarreo: Cuando el resultado de una operación aritmética sin signo es demasiado grande para caer en el destino.

Overflow: Cuando el resultado de una operación aritmética con signo es demasiado grande para caer en el destino.

Underflow: Cuando el resultado de una operación aritmética con signo es demasiado pequeño para caer en el destino.

En cuanto a la banderas solo radican en si es dígito con signo o sin signo

Saludos