Aula 04 Cap Tulo 2
Capítulo 2 – Conjunto de Instruções
• Material adaptado de:
Patterson e Henessy,
Computer Organization and Design 4th Edition
2
André Aziz (andreaziz@deinfo.ufrpe.br)
26/03/2015
• É o repertório de instruções de um computador;
• Computadores diferentes possuem conjuntos de instruções diferentes:
• Mas em muitos aspectos eles são comuns;
• Computadores antigos tinham conjuntos de instruções bem simples:
• Implementação simplificada;
• Muitos computadores modernos também possuem conjunto de instruções simplificados.
Conjunto de Instruções - ISA
André Aziz (andreaziz@deinfo.ufrpe.br)
3
26/03/2015
• Usado como exemplo durante este curso;
• Stanford MIPS comercializado pelo MIPS Technologies
(www.mips.com);
• Grande parte do mercado de sistemas embarcados:
• Aplicações em Consumer Eletronics, Network/Storage, equipamentos, câmeras, impressoras, ...
• Típico de muitos ISAs modernos:
• Vejam MIPS Reference Data.
MIPS Instruction Set
André Aziz (andreaziz@deinfo.ufrpe.br)
4
26/03/2015
• Todo computador deve ser capaz de executar operações aritméticas: • Notação da MIPS Assembly Language:
add a, b, c
• Instrui o computador a adicionar duas variáveis b e c e colocar o resultado da soma em a:
a=b+c
Operações Aritméticas
André Aziz (andreaziz@deinfo.ufrpe.br)
5
26/03/2015
• Essa notação é fixa, ou seja, sem variações.
• Se você quiser fazer ...
a=b+c+d+e
• então é necessário...
add a, b, c add a, a, d add a, a, e
# The sum of b and c is placed in a.
# The sum of b, c, and d is now in a.
# The sum of b, c, d, and e is now in a.
Operações Aritméticas
André Aziz (andreaziz@deinfo.ufrpe.br)
6
26/03/2015
• “Simplicidade favorece a regularidade”;
• Todas as operações aritméticas possuem o mesmo formato; • Regularidade faz implementação mais simples;
• Simplicidade permite alto desempenho a um baixo custo.
Princípio de Projeto 1
André Aziz (andreaziz@deinfo.ufrpe.br)
7
26/03/2015
• Código C: f = (g + h) - (i