Assembly 03
2.8 Instruções Básicas: A Linguagem da Máquina
Objetivos: estudar as instruções de uma máquina real pro meio de códigos escritos em linguagem de montagem e de alto nível.
Metodologia: estudar a linguagem de máquina passo a passo até chegar a aspectos mais elaborados.
Justificativa: construir um conjunto de instruções que facilite o projeto tanto de hardware quanto de software e que maximize a performance e minimize os custos.
Arquitetura do Computador = Conjunto de Instruções (ISA) + Organização da Máquina
software
Conjunto de Instruções hardware Níveis de Representação: temp = v[k]; v[k] = v[k+1]; v[k+1] = temp;
High Level Language
Program
Compiler
lw $15, lw $16, sw $16, sw $15,
Assembly Language
Program
Assembler
Machine Language
Program
0000
1010
1100
0101
1001
1111
0110
1000
1100
0101
1010
0000
0110
1000
1111
1001
0($2)
4($2)
0($2)
4($2)
1010
0000
0101
1100
1111
1001
1000
0110
0101
1100
0000
1010
1000
0110
1001
1111
Machine Interpretation
Control Signal
Specification
ALUOP[0:3] <= InstReg[9:11] & MASK
°
°
40
COM 168 - Arquitetura de Computadores – Capítulo 3
Níveis de organização da máquina:
Computador
Processador
Devices
Controle
Memória
Input
Datapath
Output
Main Bus
Processador
MBus
M
Bus
Registradores
Slot
Datapath
Cache
Interna
Controle
Cache Externa
Ciclo de execução:
Instruction
Fetch
IF
Instruction
Decode
ID
Operand
Fetch
Execute
Result
Store
OF
EXE
MEM
Next
Instruction
NI
A linguagem de alto nível a ser utilizada será a linguagem C e o conjunto de instruções a ser estudado será a do processador MIPS.
41
COM 168 - Arquitetura de Computadores – Capítulo 3
2.9MIPS
Histórico:
MIPS Computer Systems, Inc. foi fundada em 1984. pela Universidade de Stanford a qual pesquisou e produziu o primeiro chip MIPS. Essa companhia foi comprada pela
Silicon Graphics INC. em 1992, sendo criada a MIPS Technologies Inc. em 1998. Hoje a MIPS produz também outros