Ensamblador
Enviado por guitarfireemm • 12 de Febrero de 2013 • 1.703 Palabras (7 Páginas) • 382 Visitas
ENSAMBLADOR
1. Sistemas Numéricos
Un sistema numérico es un conjunto de reglas y símbolos que nos permiten
escribir números.
Números: reales negativos y positivos, y enteros negativos y positivos.
Representación de números enteros no negativos
Sea R (base o radio) un número mayor o igual que 2, entonces pueden
representarse números enteros como una cadena de dígitos escogidos entre 0, 1, 2, ..., R-
1. Donde la cadena es la representación en base R del entero.
La base de un sistema numérico es el número de dígitos que pueden aparecer en
cada posición en el sistema numérico.
Ejemplo: R=3 dígitos={0,1,2}
Base 10 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, ....
Base 3 0, 1, 2, 10, 11, 12, 20, 21, 22, 100, 101, 102, 110, 111, 112, 120, 121, 122,
Conversión entre bases
Sea el número a
k
a
k-1….a
1
, un entero en base R.
Para convertir este número de base R a base Q utilizamos la conversión:
a
kR
k-1
+a
k-1R
k-2
+…+a
1R
0
(Expresión uno)
Donde R es la base en la que se encuentra el número (base actual), k es el número
de dígitos que conforman el número y Q es la nueva base (se debe trabajar con aritmética
en base Q). Se le conoce como Representación Polinomial.
Ejemplos:
1) Convertir (100110)
2 ( )
10
R=2 k=6 Q=10 a6=1, a5=0, a4=0, a3=1, a2=1, a1=0
1*2
6-1
+0*2
6-2
+0*2
6-3
+1*2
6-4
+1*2
6-5
+0*2
6-6
= 1*2
5
+0*2
4
+0*2
3
+1*2
2
+1*2
1
+0*2
0
=
1*2
5
+1*2
2
+1*2
1
= 32+4+2 = 38
Finalmente obtenemos que: (100110)
2 (38)
10
2) Convertir (4302)
5 ( )
3MC Beatriz Beltrán Martínez
2
R=5 Q=3 k=4 a4=4, a3=3, a2=0, a1=2
Se debe trabajar con aritmética en base 3, por lo tanto necesitamos las tablas de suma
y multiplicación en base 3.
4*5
3
+3*5
2
+0*5
1
+2*5
0
= 11*12
3
+10*12
2
+2*12
0
= 11*11122+10*221+2*1 =
200112+2210+2 = 210101
Realizando las sumas y multiplicaciones debidas en base 3, obtenemos:
(4302)
5 (210101)
3
Conversión de números de base R a base 10 (donde R10) Algoritmo 1.
(Regla de Horner para la evaluación de polinomios)
1. i k, num 0
2. Mientras i1 hacer
num num*R+a
i
i i-1
fin_mientras
3. Fin
Ejemplo:
Convertir (4302)
5 ( )
10
Conversión de números de base 10 a base S (donde S 10) Algoritmo 2.
1. i 1, q 0, p 0
2. Repetir
q [x/s] (parte entera)
p x-q*s (residuo)
a
i p, i i+1, x q
...