capitulo 2 instituto politÉcnico nacional centro de investigacion en computacion laboratorio de...
TRANSCRIPT
Capitulo 2
INSTITUTO POLITÉCNICO NACIONALCENTRO DE INVESTIGACION EN COMPUTACION
LABORATORIO DE MICROTECNOLOGÍA Y SISTEMAS EMBEBIDOS Grupo de Arquitectura de Computadoras y Sistemas Embebidos
Arquitecturas de ComputadorasCurso Propedéutico
Capitulo 2Aritmética de enteros
(División)
Marco Antonio Ramírez SalinasHerón Molina Lozano
Capitulo 2
División
2
Cociente
DividendoDivisor
Residuo
Dividendo= Cociente * Divisor + Residuo
Capitulo 2
División (7÷2)
3
0010 0 1 1 1
0 0 0 0 1
0 0 0 0
0 0 0 0
0 0 1 0
-
0 0 0 1 1
-
-
0 0 0 1 1
0 0 1 1
0 0 1 0-
0 0 0 1
Capitulo 2
Algoritmo de División Binaria (W=4)
4
0010 0000
____ 0000 0111
Residuo (8 bits)
32-bit ALU
1110 0111
32d
7d
-25d
Paso 0: Inicio•Divisor=2•Dividendo=7
Divisor (8 bits)
Cociente (4 bits)
-
Capitulo 2
Algoritmo de División (W=4)
5
0010 0000
____ ___0 0000 0111
Residuo
32-bit ALU
1110 0111
32d
7d
-25d
Paso 1: Resta Divisor (8 bits)
Cociente (4 bits)
Negativo
-
Capitulo 2
Algoritmo de División (W=4)
6
0001 0000
Divisor (8 bits)
____ ___0
Cociente (4 bits)
0000 0111
Residuo
32-bit ALU
16d
7d
Paso 2: Desplaza
Capitulo 2
Algoritmo de División (W=4)
7
0001 0000
Divisor (8 bits)
____ __00
Cociente (4 bits)
0000 0111
Residuo
32-bit ALU
1111 0111
16d
7d
-9d
Paso 3: Resta
Negativo
-
Capitulo 2
Algoritmo de División (W=4)
8
0000 1000
Divisor (8 bits)
____ __00
Cociente (4 bits)
0000 0111
Residuo
32-bit ALU
8d
7d
Paso 4: Desplaza
Capitulo 2
Algoritmo de División (W=4)
9
0000 1000
Divisor (8 bits)
____ _000
Cociente (4 bits)
0000 0111
Residuo
32-bit ALU
1111 1111
8d
7d
-1d
Paso 5: Resta
Negativo
-
Capitulo 2
Algoritmo de División (W=4)
10
0000 0100
Divisor (8 bits)
____ _000
Cociente (4 bits)
0000 0111
Residuo
32-bit ALU
4d
7d
Paso 6: Desplaza
Capitulo 2
Algoritmo de División (W=4)
11
0000 0100
Divisor (8 bits)
____ 0001
Cociente (4 bits)
0000 0111
Residuo
32-bit ALU
0000 0011
4d
7d
3d
Paso 7: Resta
Positivo
-
Capitulo 2
Algoritmo de División (W=4)
12
0000 0010
Divisor (8 bits)
____ 0001
Cociente (4 bits)
0000 0011
Residuo
32-bit ALU
2d
3d
Paso 8: Desplaza
-
Capitulo 2
Algoritmo de División (W=4)
13
0000 0010
Divisor (8 bits)
___0 0011
Cociente (4 bits)
0000 0011
Residuo
32-bit ALU
0000 0001
2d
3d
1d
Paso 9: Resta
Positivo
Capitulo 2
Análisis del algoritmo
La computadoras no sabe cuando el divisor es mas pequeño que el dividendo.PASO 0: Cociente=0; Divisor = Hbits; Residuo= DividendoPASO 1: Resta. Divisor –Dividendo ; (slt $1, $2, $3 ) PASO 2a: Si el resultado es positivo (Divisor ≤ Dividendo), se genera un ‘1’ en el cociente.PASO 2b: Si el resultado es negativo (Divisor > Dividendo), se genera un ‘0’ en el cociente y se restablece el Dividendo sumando el divisor. PASO 3: se desplaza el divisor a la derecha.PASO4: PASO1
14
Capitulo 2
Algoritmo de división en hardware
1er versión
15
Divisor
64-bit ALU
Residuo
Control
Escribe
bit0
64 bits
Shift rigtht
Cociente
Shift Left
32 bits
Capitulo 2
Algoritmo de división en hardware
2da versión
16
Divisor
32-bit ALU
Residuo
Escribe
32 bits
Shift rigtht
Cociente
Shift Left
32 bits
ControlShif Left
Capitulo 2
17
Divisor
32-bit ALU
ResiduoEscribe
32 bits
Shift rigtht
Cociente
Shift Right
Shif Left Control
Algoritmo de división en hardware
3er versión