¿Quieres trabajar con ellos juntos? Es fácil
Digamos que usted tiene el número 2643 - en la base 10. si lo divide en mitades, tendrá algo así como 26 y 43, ¿verdad? bueno, sabes que si multiplicas por dos, tienes que multiplicar de derecha a izquierda y llevar. Haga eso - multiplique el lado derecho, y si hay desbordamiento, agréguelo al lado izquierdo y luego multiplique el lado izquierdo.
Por ejemplo:
(37 82) *2 -> ((37*2) + overflow) + 64 -> (74 + 1) 64 -> 75 64
Vea cómo eso funcionó? Lo mismo aplica para la división: ¿necesita llevar? Roba desde el bit más alto. ¿Quieres agregar o quitar números? ¡No es tan difícil después de todo!
Los números binarios funcionan de la misma manera.
(01110110 10110011) * 10 = (0) <- 1110110(1) <- 01100110
Básicamente se calcula el extremo inferior, luego se calcula el extremo superior, luego se aplica el desbordamiento.
¿Qué arquitectura y ensamblador? –
No hay nada que convertir. Simplemente comience a tratar el par de registros como un par que representa un número de 16 bits. El funcionamiento de las matemáticas depende de las instrucciones que tenga disponibles en su plataforma. – harold
No hay pista. Estoy trabajando con un programador de sistemas integrados. Él dice que es limitado. Él puede enviarme un byte hexadecimal. Y luego otro byte hexadecimal Y debería ser capaz de convertirlos en un número de 16 bits. Pero no estoy seguro de cómo. –