instruções: a linguagem de máquina – aula 01 professor: andré luis meneses silva e-mail/msn:...
TRANSCRIPT
![Page 1: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/1.jpg)
Instruções: A Linguagem de Máquina – Aula 01
Professor: André Luis Meneses SilvaE-mail/msn: [email protected]
Página: www.dcomp.ufs.br/index.php/docentes:Andre
![Page 2: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/2.jpg)
Introdução
Organização de um computador. O processador MIPS. Instruções para soma e subtração. Registradores no MIPS. Instruções para transferência de dados. Endianness. Instrução para soma com constantes. Representação das instruções em linguagem
de máquina. Instruções para operações lógicas
![Page 3: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/3.jpg)
Organização de um computador
Cinco componentes clássicos: Entrada Saída Memória Caminho de Dados Controle
![Page 4: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/4.jpg)
![Page 5: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/5.jpg)
Organização de um computador
Entrada: esta classe compreende componentes responsáveis pela entrada de dados no computador. Ex: Mouse, teclado, scanner
Saída: esta classe compreende os componentes responsáveis pela saída de dados do computador. Ex: Monitor, Impressora, etc.
![Page 6: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/6.jpg)
Organização de um computador
Memória Área de armazenamento temporário, onde os
programas são mantidos quando estão sendo executados e que contém os dados necessários para os programas em execução.
Elas podem ser: Voláteis
Armazenamento que conserva os dados apenas enquanto estiver recebendo energia. Memórias DRAM, etc
Não voláteis Forma de memória que conserva os dados mesmo na
ausência de energia. Discos magnéticos, discos óticos, etc
![Page 7: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/7.jpg)
Organização de um computador
Hierarquia de Memória: Registradores
Memórias muito rápida, pequenas, localizadas dentro do processador.
Memória Cache Memórias mais lentas que os registradores, mas ainda
assim possuem um bom desempenho. Em geral os processadores possuem dois ou mais níveis,
ambos no mesmo invólucro.
![Page 8: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/8.jpg)
Organização de um computador
Hierarquia de Memória: Memória Principal
Memória volátil usada para armazenar programas enquanto estão sendo executados.
Memória Secundária Memória não-volátil usada para armazenar programas e
dados entre execuções.
![Page 9: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/9.jpg)
Hierarquia de Memória
registradores
Memória cache
Memória Principal
Memória Secundária
![Page 10: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/10.jpg)
Organização de um computador
Processador Caminho de dados: Componente responsável pela
realização de operações aritméticas. Controle: Comanda o caminho de dados, a memória
e os dispositivos de E/S de acordo com as instruções do programa.
![Page 11: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/11.jpg)
![Page 12: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/12.jpg)
O processador MIPS
As palavras da linguagem de um computador são chamadas de instruções e seu vocabulário é denominado de conjunto de instruções.
Embora o conjunto de instruções seja uma característica associada a arquitetura, em geral, o conjunto de instruções de diferentes arquiteturas são bastante similares. Isso acontece devido:
Aos projetos possuírem princípios básicos semelhantes
Algumas operações básicas devem ser oferecidas por todos os computadores.
![Page 13: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/13.jpg)
O processador MIPS
Hoje e na próxima aula veremos o conjunto de instruções do processador MIPS.
Um pouco sobre o MIPS: Criado na década de 80 por John L.
Hennessy. Microprocessador bastante utilizado.
Em 2002, foram fabricados 100 milhões de unidades.
Encontrados em produtos de várias empresas. ATI, Broadcom, Cisco, NEC, Nintendo, Silicon
Graphics, Sony, Texas Instrument, Toshiba, etc.
![Page 14: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/14.jpg)
O processador MIPS
Algumas Características Instruções simples, sempre realizando uma única
operação. As instruções possuem tamanho fixo de 32 bits. No total, o MIPS possui 32 registradores. Cada um deles,
de 32 bits. Estes 32 bits representam a palavra (word), ou seja, a
unidade de acesso natural de um computador. Em geral, o tamanho da palavra é de 32 bits, porém nos novos processadores como os Core2 Duo, esta palavra é de 64 bits.
Cada instrução MIPS sempre trabalha com 3 operandos. Esta característica torna o hardware mais simples.
Esta característica introduz o Princípio de Projeto 1 utilizado no desenvolvimento de hardware. É ele: “Simplicidade favorece a regularidade”
![Page 15: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/15.jpg)
Instruções para soma e subtração
As instruções de adição e subtração do MIPS são, respectivamente: add e sub. Exemplos:
add a, b, c # A soma de b + c é colocada em a. sub a, b, c # A subtração de b - c é colocada em a. add a, a, c # A soma de a + c é colocada em a.
Como é compilada as seguintes instruções java? a = b + c; d = a - e;
![Page 16: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/16.jpg)
Instruções para soma e subtração
add a, b, csub d, a, e
E no caso de uma atribuição mais complexa, como por exemplo? f = (g + h) – (i + j);
![Page 17: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/17.jpg)
Instruções para soma e subtração
add a, b, csub d, a, e
E no caso de uma atribuição mais complexa, como por exemplo? f = (g + h) – (i + j);
Neste caso, é necessário gerar mais de uma instrução.
Temos também de utilizar variáveis temporárias.
![Page 18: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/18.jpg)
Registradores no MIPS
Operandos do hardware de um computador Ao contrário dos programas nas linguagens de alto
nível, os operandos das instruções aritméticas são restritos. Os operandos de uma instrução aritmética são os
registradores. Lembrem-se que no MIPS só temos 32
registradores. Qual o motivo para termos uma quantidade tão
pequena de registradores?
![Page 19: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/19.jpg)
Instruções para soma e subtração
f = (g + h) – (i + j); Assembly final:
add t0, g, hadd t1, i, jsub f, t0, t1
E aí pessoal, assembly é ou não é fácil?
![Page 20: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/20.jpg)
Registradores no MIPS
Além de fatores ligados ao consumo de energia, complexidade do hardware e preço final do produto, também temos um outro fator, nosso Princípio de Projeto 2: “Menor significa mais rápido”
Uma quantidade muito grande de registradores pode aumentar o tempo do ciclo do clock, simplesmente porque os sinais eletrônicos levam mais tempo quando precisam atravessar uma distância maior. Cuidado. Em alguns casos ter mais registradores promove um
melhor desempenho. Em um projeto de hardware devemos sempre pesar o limite deste
número de registradores (ou seja, o momento em que não temos mais melhora de desempenho), bem como sua viabilidade.
![Page 21: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/21.jpg)
Registradores no MIPS
Os nomes dos registradores MIPS obedecem ao seguinte padrão: Utilizamos “$” seguido por dois caracteres para
representar um registrador. $s0, $s1, $s2,... representam os registradores que
correspondem às variáveis dos programas em C e Java.
$t0, $t1, ... Representam os registradores que armazenam valores temporários.
![Page 22: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/22.jpg)
Registradores no MIPS
Logo, para o programa anterior, teríamos: f = (g + h) – (i + j);
Assembly
add t0, g, hadd t1, i, jsub f, t0, t1
add $t0, $s1, $s2add $t1, $s3, $s4sub $s0, $t0, $t1
![Page 23: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/23.jpg)
Registradores no MIPS
Pergunta: O processador MIPS possui apenas 32 registradores.
Como fazemos para trabalhar com variáveis complexas cuja quantidade de registradores do MIPS é insuficiente para armazená-las?
![Page 24: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/24.jpg)
Instruções para transferência de dados
Utilizando a memória principal. Para realizarmos a transferência de um word da
memória para um registrador, utilizamos a instrução lw (load word). Sintaxe:
lw $r1, const($r2), $r1 é o registrador que armazena o conteúdo da memória. const representa um valor constante que é somado ao
endereço presente no registrador $r2.
![Page 25: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/25.jpg)
A memória principal Cada endereço da memória
externa representam células de 8 bits (1 byte).
A instrução lw carrega um word da memória principal.
Logo, se dermos um lw no endereço 0, receberemos os dados do endereço 0, 1, 2 e 3.
Memória Principal
0123...9
1111231...13
Instruções para transferência de dados
![Page 26: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/26.jpg)
Instruções para transferência de dados
Qual código assembly para o seguinte trecho de código, considere A um array de inteiros?g = h + A[8];
![Page 27: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/27.jpg)
Instruções para transferência de dados
Qual código assembly para o seguinte trecho de código, considere A um array de inteiros?g = h + A[8];lw $t0,32($s3);add $s1,$2,$t0;
Porque 32?
![Page 28: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/28.jpg)
Instruções para transferência de dados
Qual código assembly para o seguinte trecho de código, considere A um array de inteiros?g = h + A[8];lw $t0,32($s3);add $s1,$2,$t0;
Porque 32? Porque cada posição do array ocupa 1 palavra (4 bytes ou
32 bits). Lembrem-se que cada endereço sinaliza para uma célula de 1 byte apenas. Logo, para acessarmos o inteiro na posição 8, temos de pular os 8 inteiros que aparecem antes no array, assim temos: 4 * 8 = 32
![Page 29: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/29.jpg)
Endianness
Grande parte dos processadores fazem restrição com relação ao endereço em que começam suas palavras. No Mips, por exemplo, suas palavras precisam
começar em endereços que sejam múltiplos de 4. Esse requisito é denominado restrição de
alinhamento. Com relação ao byte de endereçamento, os
processadores podem ser big endian ou little endian.
![Page 30: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/30.jpg)
Endianness
Processadores Big-Endian numeram os bytes dentro de uma palavra (word) de forma que o byte com o valor mais baixo é o mais à esquerda.
![Page 31: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/31.jpg)
Endianness
Processadores Little-Endian numeram os bytes dentro de uma palavra (word) de forma que o byte com o valor mais baixo é o mais à direita.
![Page 32: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/32.jpg)
Instruções para transferência de dados
A instrução que desempenha função inversa ao load word (lw) é a instrução store word (sw).
Basicamente ela transfere o conteúdo de um registrador para um endereço específico da memória principal.
Sintaxe: Similar ao do lw.
sw $r1, const($r2)
![Page 33: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/33.jpg)
Instruções para transferência de dados
Exemplo: A[12] = h + A[8];
lw $t0, 32($s3) add $t0, $s2, $t0sw $t0, 48, $s3;
![Page 34: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/34.jpg)
Instrução para soma com constantes
addi (Adição Imediata). Para evitar o overhead de termos de ler uma constante
da memória para depois utilizá-la em uma soma, Mips dá suporte a uma instrução especial, o addi.
Basicamente, ela realiza uma soma com um valor constante. Sintaxe:
addi $r1, $r2, const # armazena o valor de $r2 + const no registrador $r1.
Essa instrução obedece ao princípio de projeto 3: “Agilize os casos mais comuns”
Realmente ele é um caso comum, pois soma com constantes representam um percentual bastante elevado do código. Lembrem-se que grande parte dos laços fazem uso desta
instrução.
![Page 35: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/35.jpg)
Representação das instruções em linguagem de máquina.
Embora até o momento só termos visto instruções em assembly, cada uma destas instruções possui uma correspondência binária.
A estas instruções, em binário, damos o nome de linguagem de máquina.
Por exemplo a instrução add $t0, $s1, $s2 possui a seguinte representação:
![Page 36: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/36.jpg)
Representação das instruções em linguagem de máquina.
Campos de uma instrução MIPS: Instruções tipo-R (de registrador) ou formato R
op: Operação básica da instrução (opcode) rs: registrador do primeiro operando de origem rt: registrador do segundo operando de origem rd: registrado do operando de destino shamt: “shift amount” (quantidade de deslocamento). funct: Função.
![Page 37: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/37.jpg)
Representação das instruções em linguagem de máquina.
Campos de uma instrução MIPS: Instruções tipo-I (de imediato) ou formato I.
op: Operação básica da instrução (opcode) rs: registrador do primeiro operando de origem rt: registrador do segundo operando de origem constant or address: constante ou endereço de
memória.
![Page 38: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/38.jpg)
Representação das instruções em linguagem de máquina.
Embora MIPS possua dois diferentes tipos de formato de instruções, percebam que a quantidade de bits é a mesma.
Isso caracteriza o Princípio de Projeto 4, que diz: “Um bom projeto exige bons compromissos”.
![Page 39: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/39.jpg)
Instruções para operações lógicas
Operações Lógicas
![Page 40: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/40.jpg)
Instruções para operações lógicas
Sintaxe de uso dos operadores de deslocamento (sll, slr). sll $t2, $s0, 4; # reg $t2 = $s0 << 4 bits. Para $s0 = 9, teríamos $t2 = 144;
Observem o correspondente em instrução de máquina. Vejam que o campo shamt é utilizado para sinalizar a quantidade de deslocamento
![Page 41: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/41.jpg)
Instruções para operações lógicas
Sintaxe de uso dos operadores and, nor e or. and $t0, $t1, $t2 # reg $t0 = reg $t1 & reg $t2;
A sintaxe é a mesma para nor e or. Mips não possui uma instrução not. Tem como eu obter esta instrução a partir de
uma das instruções acima?
![Page 42: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/42.jpg)
Instruções para operações lógicas
Sim, basta fazermos um nor entre o valor que queremos negar e um registrador que possua o valor 0.
or
=
not
![Page 43: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/43.jpg)
Próxima aula
Instruções para tomadas de decisões; Funções; Endereçamento para operandos imediatos e
endereços de 32 bits.
![Page 44: Instruções: A Linguagem de Máquina – Aula 01 Professor: André Luis Meneses Silva E-mail/msn: andreLuis.ms@gmail.com Página: Andre](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc11d497959413d8ca2cc/html5/thumbnails/44.jpg)
Estudar.
Organização e Projeto de Computadores: Interface Hw/Sw Seções 2.1 até 2.5