Requisito previo: binario a/desde código Gray
Problema: escriba un programa para convertir un número binario a un número de código Gray de 8 bits donde la dirección inicial es 2000 y el número se almacena en la dirección de memoria 2500 y almacena el resultado en la dirección de memoria 2600 .
Ejemplo –
Algoritmo –
- Mover el valor en [2500] a AL
- Mover AL a BL
- Desplazamiento lógico a la derecha AL una vez
- XOR BL con AL (lógicamente) y almacenar en BL
- Mover contenido de BL a 2600
- Deténgase
Programa –
Memoria | Mnemotécnica | operandos | Comentario |
---|---|---|---|
2000 | MOVIMIENTO | AL, [2500] | [AL] <- [2500] |
2004 | MOVIMIENTO | BL, AL | [BL] <- [AL] |
2006 | SHR | AL, 01 | Desplazar a la derecha una vez |
2008 | XOR | BL, AL | [BL] <- [BL] @ AL |
200A | MOVIMIENTO | [2600], BL | [2600] <- [BL] |
200E | HLT | Deténgase |
Explicación: los registros AL, BL se utilizan para fines generales
- MOV se utiliza para transferir los datos
- SHR se usa para cambiar a la derecha (lógicamente) hasta que el contador no sea cero
- XOR se usa para exclusivo-o de dos valores (lógicamente)
- HLT se utiliza para detener el programa
Consulte el programa 8085 para convertir números binarios a grises