Programa 8085 para mostrar o mascaramento de nibbles mais baixos e mais altos do número de 8 bits
Problema - Escreva um programa em linguagem assembly no microprocessador 8085 para mostrar o mascaramento do nibble inferior e superior do número de 8 bits.
Exemplo -
Suposição - o número de 8 bits é armazenado no local de memória 2050. Após mascarar os nibbles, o nibble de ordem inferior é armazenado no local de memória 3050 e o nibble de ordem superior é armazenado no local de memória 3051.
Algoritmo -
- Carregue o conteúdo do local de memória 2050 no acumulador A.
- Mova o conteúdo de A no registro B.
- Execute a operação AND de A com 0F e armazene o resultado na localização de memória 3050.
- Mova o conteúdo de B em A.
- Execute a operação AND de A com 0F e inverta o resultado usando a instrução RLC 4 vezes.
- Armazene o resultado no local de memória 3051.
Programa -
ENDEREÇO DE MEMÓRIA | MNEMÔNICAS | COMENTE |
---|---|---|
2000 | LDA 2050 | A <- M [2050] |
2003 | MOV B, A | B <- A |
2004 | ANI 0F | A <- A (AND) 0F |
2006 | STA 3050 | M [3050] <- A |
2009 | MOV A, B | A <- B |
200A | ANI 0F | A <- A (AND) 0F |
200C | RLC | girar o conteúdo de A para a esquerda em 1 bit sem transportar |
200D | RLC | girar o conteúdo de A para a esquerda em 1 bit sem transportar |
200E | RLC | girar o conteúdo de A para a esquerda em 1 bit sem transportar |
200F | RLC | girar o conteúdo de A para a esquerda em 1 bit sem transportar |
2010 | STA 3051 | M [3051] <- A |
2013 | HLT | FIM |
Explicação - Os registros A, B são usados:
- LDA 2050: carregue o conteúdo do local de memória 2050 no acumulador A.
- MOV B, A: move o conteúdo de A para B.
- ANI 0F: execute a operação AND de A com 0F e armazene o resultado de volta em A.
- STA 3050: armazena o conteúdo de A na localização de memória 3050.
- MOV A, B: move o conteúdo de B em A.
- ANI 0F: execute a operação AND de A com 0F e armazene o resultado de volta em A.
- RLC: gira o conteúdo de A para a esquerda em 1 bit sem transportar. Use esta instrução 4 vezes para reverter o conteúdo de A.
- STA 3051: armazena o conteúdo de A no local de memória 3051.
- HLT: interrompe a execução do programa e interrompe qualquer execução posterior.
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva