Documentos de Académico
Documentos de Profesional
Documentos de Cultura
T2.1 - Lenguaje Ensamblador - ARM
T2.1 - Lenguaje Ensamblador - ARM
Arquitectura de Computadores
Control Unit +
Datapath Peripheral 4
Peripheral 2 Peripheral 3
Cache Memory
Control Unit
31:28
Cond MemWrite
27:26
plataforma 25:20
15:12
Op
Funct
Rd
ALUControl[1:0]
ALUSrc
ImmSrc[1:0]
RegWrite
Flags
A1 RD1
1010100…
RST A
WE
move.b $1001,D1
15 1 RA1 SrcA 31:0 31:0
1 31:0 RST 31:0 31:0 3:0 R A RD
A RD 0 3:0 31:0 ALUResult Data
0 PC’ PC Instr A2 RD2 0
B ALU
ReadData
0100100… Instruction 1 RA2 Memory
cmp.b D1,D0
1 SrcB
CLK Memory 15:12 3:0 Register 31:0
R15 A3 WD
File WriteData CLK
1101110…
31:0
bgt Print_Msg_A
WD3
4 31:0
+ R15 1
ExtImm
PC+8
PC+4 0
…
+ CLK
beq Print_Msg_B 4
RST
RST
… 23:0
Extend 31:0
Result
1. Concepto de Arquitectura
Datos CPU
1000100100110001001001
10100010010 01110100100
0111010010001110100100 Control Datapath
10100010100 10100010100 Sistema de conexión
compartido
Concepto de Arquitectura (3)
Arquitectura Harvard
▪ Arquitectura ligeramente diferente a la Von Neumann.
▪ En esta se utilizan medios de almacenamiento diferentes tanto
para las instrucciones como para los datos
CPU
Instrucciones Datos
Control
1000100100110001001001 1000100100110001001001
10100010010 01110100100 10100010010 01110100100
0111010010001110100100 0111010010001110100100
10100010100 10100010100 10100010100 10100010100
Datapath
Instrucciones Datos
Concepto de Arquitectura (4)
instrucción 3
010 A xor B
011 not A
SUMAR A y B Control ALU
100 R=A+B
Funcionamiento básico
Ejecución de un programa, colección de instrucciones
almacenadas en memoria.
Búsqueda de
Ejecución de
INICIO la siguiente DETENIDO
la instrucción
instrucción
Control Unit
31:28
Cond
11011101010101…
MemWrite
beq Print_Msg_A
27:26
Op ALUControl[1:0]
25:20
Funct ALUSrc
…
15:12 ImmSrc[1:0]
bne Print_Msg_B
Rd
RegWrite
Flags
RegSrc[0:1]
…
ALUFlags[3:0]
19:16
ReadData
Instruction 1 RA2 Memory
1 SrcB
CLK Memory 15:12 3:0 Register 31:0
R15 A3 WD
File WriteData CLK
31:0
WD3
Arquitectura 4
+
31:0
R15 1
ExtImm
PC+8
PC+4 0
+ CLK
23:0
1. Concepto de Arquitectura
Reset Reset
Control Unit Instruction
CLK
InstrAddr Memory
Signals from and to Datapath Unit
ReadInstr
… …
WriteData
Lenguaje Ensamblador (2)
Cada sistema de cómputo ofrece un lenguaje propio
B100
B900
C500
Instruction
Memory
Reset Reset CD01
CLK Control Unit B000
InstrAddr 1E40
Signals from and to Datapath Unit
ReadInstr 3501
B102
… …
FD00
WriteData
Lenguaje Ensamblador (3)
Cada sistema de cómputo ofrece un lenguaje propio
1. Concepto de Arquitectura
R0: varR, R1: var1, R2: var2, R3: var3, R4: var4, R5: vart1, R6: vart2
ADD R5, R1, R2 // En C: vart1 = var1 + var2
ADD R6, R5, R3 // En C: vart2 = vart1 + var3
SUB R0, R6, R4 // En C: varR = vart2 – var4
Operandos en Registros y Memoria (4)
Valores Inmediatos: son valores constantes en memoria
codificados dentro de la instrucción, por lo que su acceso es rápido
Hacen parte del operando fuente 2 (Src2): OPER Ry, Rs1, #Imm