Está en la página 1de 8

ESCUELA POLITECNICA NACIONAL

LABORATORIO DE SISTEMAS MICROPROCESADOS

TRABAJO PREPARATORIO
Nombre: Christian Pincha

OBJETIVO:
El objetivo de esta práctica es el de realizar una revisión de la representación de números
en un microprocesador, y los algoritmos de multiplicación y división binarios.
1. Representación de números en binario (enteros y decimales)

 Transformar el número decimal 100 en binario

 Transformar 0,3125 (decimal) en binario.


Proceso:
0,3125 x 2 = 0,625 => 0
0,625 x 2 = 1,25 => 1
0,25 x 2 = 0,5 => 0
0,5 x 2 = 1 => 1
En orden: 0101 -> 0,0101 (binario)
2. Representación de números en BCD (enteros y decimales)
 Transformar el número decimal 85 en BCD
Conversión directa típica entre un número en decimal y
uno binario.
8510 = 10101012
La representación el mismo número decimal en código BCD
se muestra a la derecha
 Transformar el número decimal 568 en BCD
Conversión directa típica entre un número en
decimal y uno binario.
56810 = 10001110002
La representación el mismo número decimal en
código BCD se muestra a la derecha
Como se puede ver, de los dos ejemplos anteriores, el número equivalente decimal no se
parece a la representación en código BDC.
Para poder obtener el equivalente código BCD de cada cifra de los números anteriores,
se asigna un "peso" o "valor" según la posición que ocupa.
Este "peso" o "valor" sigue el siguiente orden: 8 - 4 - 2 - 1. (Es un código ponderado)
ESCUELA POLITECNICA NACIONAL
LABORATORIO DE SISTEMAS MICROPROCESADOS

3. Bases Octal y Hexadecimal.


Sistema octal
El sistema numérico en base 8 se llama octal y utiliza los dígitos 0 a 7.
Por ejemplo, el número binario para 74 (en decimal) es 1001010 (en binario), lo
agruparíamos como 1 / 001 / 010, de tal forma que obtengamos una serie de números en
binario de 3 dígitos cada uno (para fragmentar el número se comienza desde el primero
por la derecha y se parte de 3 en 3), después obtenemos el número en decimal de cada
uno de los números en binario obtenidos: 1=1, 001=1 y 010=2. De modo que el número
decimal 74 en octal es 112.
Hay que hacer notar que antes de poder pasar un número a octal es necesario pasar por el
binario. Para llegar al resultado de 74 en octal se sigue esta serie: decimal -> binario ->
octal.

Sistema hexadecimal
El sistema hexadecimal, a veces abreviado como hex, es el sistema de numeración
posicional de base 16 —empleando por tanto 16 símbolos—. Su uso actual está muy
vinculado a la informática y ciencias de la computación, pues los computadores suelen
utilizar el byte u octeto como unidad básica de memoria; y, debido a que un byte
representa 28 valores posibles, y esto puede representarse como
, que, según el teorema
general de la numeración posicional, equivale al número en base 16 10016, dos dígitos
hexadecimales corresponden exactamente —permiten representar la misma línea de
enteros— a un byte.
En principio dado que el sistema usual de numeración es de base decimal y, por ello, sólo
se dispone de diez dígitos, se adoptó la convención de usar las seis primeras letras del
alfabeto latino para suplir los dígitos que nos faltan. El conjunto de símbolos sería, por
tanto, el siguiente:
S = {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}
Suma en binario
+ 0 1
0 0 1
1 1 0+1
Las sumas 0 + 0, 0 + 1 y 1 + 0 son evidentes:
0+0=0
0+1=1
1+0=1
Pero la suma de 1+1, que sabemos que es 2 en el sistema decimal, debe escribirse en
binario con dos cifras (10) y, por tanto 1+1 es 0 y se arrastra una unidad, que se suma a la
posición siguiente a la izquierda. Veamos algunos ejemplos:
ESCUELA POLITECNICA NACIONAL
LABORATORIO DE SISTEMAS MICROPROCESADOS

010 + 101 = 111 210 + 510 = 710


001101 + 100101 = 110010 1310 + 3710 = 5010
1011011 + 1011010 = 10110101 9110 + 9010 = 18110
110111011 + 100111011 = 1011110110 443 10 + 31510 = 75810

Sustracción en binario

- 0 1
0 0 1
1 1+1 0

Las restas 0 - 0, 1 - 0 y 1 - 1 son evidentes:


0–0=0
1–0=1
1–1=0
La resta 0 - 1 se resuelve, igual que en el sistema decimal, tomando una unidad prestada
de la posición siguiente: 10 - 1, es decir, 2 10 – 110 = 1.  Esa unidad prestada debe
devolverse, sumándola, a la posición siguiente. Veamos algunos ejemplos:
111 – 101 = 010 710 – 510 = 210
 Calculando el complemento a dos del sustraendo
i. Complemento a dos
El complemento a dos de un número N, compuesto por n bits, se define como:
C2N = 2n – N

Veamos un ejemplo: tomemos el número N = 1011012, que tiene 6 bits, y calculemos su


complemento a dos:
N = 4510    n = 6    26 = 64    y, por tanto: C2N = 64 – 45 = 19 = 0100112

ii. Complemento a uno


El complemento a uno de un número N, compuesto por n bits es, por definición, una
unidad menor que el complemento a dos, es decir:

C1N = C2N - 1
y, por la misma razón:
C2N = C1N + 1

Calculemos el complemento a uno del mismo número del ejemplo anterior:


siendo N = 101101, y su complemento a dos C2N = 010011
C1N = C2N – 1 = 010011 – 000001 = 010010
C1N = 010010
ESCUELA POLITECNICA NACIONAL
LABORATORIO DE SISTEMAS MICROPROCESADOS

1. Algoritmo de la multiplicación y la división basados en desplazamientos y sumas


con ejemplos desarrollados.
Algoritmo de multiplicación binaria
INICIO

A←0

m← multiplicador

M ← multiplicando

N S
M
termina

A ← A+ M

Desplazar a:

Derecha m

Izquierda M

S
N
m=0 FIN

 Ejemplos de multiplicación binaria


1. Multiplicando: 14 10=11102
Multiplicador: 1110=101 12
ESCUELA POLITECNICA NACIONAL
LABORATORIO DE SISTEMAS MICROPROCESADOS

M m
1 1 1 0 1 0 1 1
1 1 1 0 0 0 1 0 1
1 1 1 0 0 0 0 0 1 0
1 1 1 0 0 0 0 0 0 0 1
1 1 1 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

+ 1 1 1 0

0 0 0 0 1 1 1 0

+ 1 1 1 0 0

0 0 1 0 1 0 1 0

+ 1 1 1 0 0 0 0
Respuest
a1 0 0 1 1 0 1 0 154

2. Multiplicando: 910=10012
Multiplicador: 1210=1100 2

M m
1 0 0 1 1 1 0 0
1 0 0 1 0 0 1 1 0
1 0 0 1 0 0 0 0 1 1
1 0 0 1 0 0 0 0 0 0 1
1 0 0 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

+ 1 0 0 1 0 0

0 0 1 0 0 1 0 0

+ 1 0 0 1 0 0 0
Respuest
a
0 1 1 0 1 1 0 0 108
ESCUELA POLITECNICA NACIONAL
LABORATORIO DE SISTEMAS MICROPROCESADOS

Algoritmo de división binaria


INICIO

A←0
m← divisor
Q ←dividendo
cuenta ←n

Desplazar a:

Izquierda A-Q

N S
A< M

Q0 ←1 Q0 ←0

A ← A−M

Cuenta=cuenta−1

N S
Cuenta FIN
=0
ESCUELA POLITECNICA NACIONAL
LABORATORIO DE SISTEMAS MICROPROCESADOS

 Ejemplos de división binaria


1. Dividendo: 710=011 12
Divisor: 310=00112

A Q M

0 0 0 0 0 1 1 1 0 0 1 1
0 0 0 0 1 1 1 0 0 0 1 1
0 0 0 0 1 1 1 0 0 0 1 1
0 0 0 1 1 1 0 0 0 0 1 1
0 0 0 1 1 1 0 0 0 0 1 1
0 0 1 1 1 0 0 0 0 0 1 1
0 0 0 0 1 0 0 1 0 0 1 1
0 0 0 1 0 0 1 0 0 0 1 1
Rest
o cociente

2. Dividendo: 910=10012
Divisor: 310=00112
A Q M

0 0 0 0 1 0 0 1 0 0 1 1
0 0 0 1 0 0 1 0 0 0 1 1
0 0 0 1 0 0 1 0 0 0 1 1
0 0 1 0 0 1 0 0 0 0 1 1
0 0 1 0 0 1 0 0 0 0 1 1
0 1 0 0 1 0 0 0 0 0 1 1
0 0 0 1 1 0 0 1 0 0 1 1
0 0 1 1 0 0 1 0 0 0 1 1
0 0 0 0 0 0 1 1 0 0 1 1
Rest
o cociente
ESCUELA POLITECNICA NACIONAL
LABORATORIO DE SISTEMAS MICROPROCESADOS

BIBLIOGRAFÍA:
 http://platea.pntic.mec.es/~lgonzale/tic/binarios/aritmetica.html
 http://es.wikipedia.org/wiki/Sistema_octal
 http://es.wikipedia.org/wiki/Sistema_hexadecimal
 Apuntes del cuaderno de Sistemas Digitales

También podría gustarte