Pregunta

¿Es posible añadir dos números con signo de 8 bits juntos y juego tanto en el acarreo y desbordamiento de los bits?

¿Fue útil?

Solución

Por sus comentarios, su pregunta parece ser: "¿Es posible tener las dos acarreo y el desbordamiento de conjunto para dos complemento complemento que involucra número con signo?" Es. La implementación típica es tomar la exclusiva-OR de la carry-in para el último sumador con el acarreo de salida al final de la cadena - por lo tanto, una adición desbordamiento de números negativos hará que el carry-out bit a activar y el bit de desbordamiento que se establezcan.

Este es un ejemplo, añadir -1--128:

Carry 10000 0000 
       1000 0000  (-128)
       1111 1111  (-1)
       ---------
       0111 1111 (oops, this is 127!)

Carry será conjunto, desde el último complemento resultó en un acarreo - y el desbordamiento se establecerá en base a la regla anterior (también en cuenta que añade -128 a -1 es, obviamente, no 127)

Otros consejos

Usted no tiene acceso a las banderas en C, incluso si usted podría conseguir el compilador para generar código que ellos establecido, tiene no tienen manera de usarlos.

Usted puede escribir su propia rutina de complemento en C que devolverá banderas de transportar y de desbordamiento de firmados operandos de 8 bits. Si se refiere a la transferencia de hardware y los bits de desbordamiento en el interior el procesador, no, que no se puede hacer de forma portátil en C.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top