A maior rede de estudos do Brasil

Grátis
11 pág.
O Funcionamento de um Processador Básico de 4 Bits

Pré-visualização | Página 2 de 2

of commands​), é enviado um nível alto, que ativa o 
buffer controlador para seleção de dados da memória de instruções (destacado de cor 
roxa). E caso isso seja negado, é enviado um nível baixo, desabilitando o buffer 
controlador (desabilitando também a memória de instruções) e o comando ​OE clock​, 
passando para o nível baixo e desabilitando a entrada de clock no circuito. Isso faz a 
execução do programa parar completamente. 
 
 
Para melhor entendimento do funcionamento dos contadores nos seus estados, 
pode-se observar na Figura 12 a máquina de estados com as cores correspondentes da 
imagem supracitada. 
 
Figura 12 - Máquina de Estados dos Contadores. Para cada ciclo completo do 
registrador amarelo, conta-se um próximo estado do contador vermelho. 
 
Considerando o seguinte problema: ​“somar dois números menores que 16 e 
determinar o resto da divisão dessa soma por 4”. Como a ULA não implementa 
divisão, é preciso pensar em uma maneira de usar as operações suportadas para fornecer 
o mesmo resultado. Como o divisor é 4, uma potência da base binária, sabemos que o 
resto da divisão por 2​𝑛𝑛 ​é dado tomando-se os ​𝑛𝑛 bits menos significativos do dividendo. 
Para tomarmos esses bits, devemos usar uma máscara e a operação lógica AND bit a bit 
(​Proposto pelo trabalho). 
Assim, para resolver o problema, escolhe-se os números 9 e 5 (exemplo do 
trabalho). Os comandos para resolvê-lo serão: 
 
mov R1, 5 # R1 = 5 
mov R2, 9 # R2 = 9 
add R3, R1, R2 # R3 = R1 + R2 
mov R0, 4 # R0 = 4 
mov R2, 1 # R2 = 1 
sub R0, R0, R2 # R0 = R0 – R2 
and R1, R3, R0 # R1 = R3 & R0 
Tabela 3 – Sequência de instruções 
 
 
 
As instruções de máquina correspondentes são estas descritas na tabela 4: 
Mnemônico mov Op ULA Write Reg Read Reg A Read Reg B 
mov R1, 5 1 000 01 01 01 
mov R2, 9 1 000 10 10 01 
add R3, R1, 
R2 
0 000 11 01 10 
mov R0, 4 1 000 00 01 00 
mov R2, 1 1 000 10 00 01 
sub R0, R0, 
R2 
0 001 00 00 10 
and R1, R3, 
R0 
0 100 01 11 00 
Tabela 4 – Instruções em Linguagem de Máquina 
Ou, passando diretamente à memória de instruções: 
0 215 229 
2 036 204 
4 221 042 
6 11c 000 
Tabela 5 – Valores correspondentes às instruções na memória 
Ao final da execução, na memória de resultado, é possível ver a soma de 9 e 5, e 
determinar o resto por 4 é 2: 
 
Figura 13 - Resultado do comando.

Crie agora seu perfil grátis para visualizar sem restrições.