ensamblador mc hilda castillo z. buap sistemas de numeración un sistema numérico es un conjunto de...

19
ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración 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 digitos={0,1,2} Base 10---0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18 Base 3 --- 0,1,2,10,11,12,20,21,22,100,101,102,110,111,112,120,121,122,20

Upload: sancha-otero

Post on 22-Jan-2016

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

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 digitos={0,1,2}

Base 10---0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18

Base 3 --- 0,1,2,10,11,12,20,21,22,100,101,102,110,111,112,120,121,122,200

Page 2: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

Conversión entre bases

Sea el número akak-1….a1, un entero en base R.

Para convertir este número de base R a base Q utilizamos la conversión:

akRk-1+ak-1Rk-2+…+a1R0 (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).

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*26-1+0*26-2+0*26-3+1*26-4+1*26-5+0*26-6= 1*25+0*24+0*23+1*22+1*21+0*20= 1*25+1*22+1*21= 32+4+2=38

Finalmente obtenemos que: (100110)2 (38)10

Page 3: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

2) Convertir (4302)5 ( )3

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.

+ 0 1 20 0 1 21 1 2 102 2 10 11

* 0 1 20 0 0 01 0 1 22 0 2 11

4*53+3*52+0*51+2*50= 11*123+10*122+2*120= 11*11122+10*221+2*1= 200112+2210+2= 210101

12*12

101

12

221

221*12

1212

221

11122

11122*11

11122

11122

200112

221*10

000

221

2210

200112

+ 2210

2

210101

Realizando las sumas y multiplicaciones debidas en base 3, obtenemos:(4302)5 (210101)3

Page 4: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

Conversión de números de base X a base 10 (donde X10)

Algoritmo 1. (Regla de Horner para la evaluación de polinomios)

1. ik, num 0

2. Mientras i1 hacer

num num*R+ai

i i-1

fin_mientras

3. Fin

Ejemplo:

Convertir (4302)5 ( )10

Donde R es la base actual, k es el número de dígitos que componen el número y ai es el i-ésimo dígito del número en base X (derecha a izquierda)

I num R a4 a3 a2 a1 k

4 0 5 4 3 0 2 4

3 4

2 23

1 115

0 577

Utilizando el algoritmo 1 obtenemos:(4302)5 (577)10

Page 5: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

Conversión de números de base 10 a base s (donde s10)

Algoritmo 2.

1. i1, q0, p 0

2. Repetir

q [x/s] (parte entera)

p x-q*s (residuo)

ai p, i i+1, x q

hasta q=0

3. Fin

Ejemplo:

Convertir (577)10 ( )3

Donde x inicialmente es el número a convertir, s es la nueva base y ai es el i-ésimo dígito del número en base s tomando el orden akak-1…a1

x q p ai i s

577 0 0 1 3

192 192 1 1 2

64 64 0 0 3

21 21 1 1 4

7 7 0 0 5

2 2 1 1 6

0 0 2 2 7

Obtenemos:(577)10 (210101)3

Page 6: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

Conversión de números de base X a base 10 (donde X10)

Números fraccionarios

Algoritmo 3.

1. im, num0

2. Mientras i1hacer

num (num+bi)/R

i i-1

fin_mientras

3. Fin

Ejemplo:

Convertir (.A06)16 ( )10

Donde m es el número de dígitos que componen el número que queremos convertir, R es la base actual y num es el número en la nueva base.

i num m R b1 b2 b3

3 0 3 16 A 0 6

2 .375

1 .0234375

0 .62646484Obtenemos:(.A06)16 (.62646484)10

Page 7: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de NumeraciónConversión de números de base 10 a base s (donde s10)

Números fraccionarios

Algoritmo 4.

1. i1

2. Mientras i m hacer

x x*s

y [x] (parte entera)

x x-y, bi y, i i+1

fin_mientras

3. Fin

Ejemplo:

Convertir (.62646484)10 ( )7

Donde m es el número de dígitos que se desean obtener, x es el número a convertir inicialmente, s es la nueva base y bi es el i-ésimo dígito del número en base s tomando el orden b1b2…bm

i x y bi m s

1 .62646484 3 7

4.38525388 4

2 .38525388 4

2.69677716 2

3 .69677716 2

4.87744012 4

4 .87744012 4Obtenemos:(.62646484)10 (.424)7

Page 8: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

Conversión de potencias de 2

Para convertir números de base 2 a base k, donde k puede expresarse como una potencia de 2, es decir, k=2x donde x>1 y es un número entero, se llevan a cabo los siguientes pasos:

1.Se agrupan de x en x los dígitos que se encuentran a la izquierda del punto, comenzando a partir de él y aumentando ceros a la izquierda cuando es necesario.

2.Se agrupan de x en x los dígitos que se encuentran a la derecha del punto comenzando a partir de éste y aumentando ceros a la derecha cuando sea necesario.

3.Se sustituyen los grupos por los dígitos correspondientes en la base k.

Ejemplo:

(1110010100.011011)2 ( )16 Donde 16=24

0011 1001 0100 . 0110 1100 Resultado:

3 9 4 6 C (1110010100.011011)2 (394.6C)16

Se agregaron dos ceros

Page 9: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

Conversión de potencias de 2

Para convertir números de base k=2x a base 2, se sustituye cada dígito en base k por los x dígitos binarios correspondientes.

Ejemplo:

(7402.61)8 ( )2 Donde 8=23

7 4 0 2 . 6 1 Resultado:

111 100 000 010 110 001 (7402.61)8 (111100000010.110001)2

Operaciones aritméticas en diferentes bases

Base 2

Suma+ 0 10 0 11 1 10

101101

+10110

1000011

Carry o acarreo

1 1 1

Page 10: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

Resta- 0 10 0 11 1 0

Borrow (deber uno)

101101

- 10110

010111

1 1 1

Multiplicación

* 0 10 0 01 0 1

101101*1101

101101

000000

101101

101101_______ 1001001001

1 1 11 1

1

1

División

/ 0 10 e 01 e 1

___1000001 1101 1101010110 -1101 0000010110 - 1101 01001

Page 11: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

+ 0 1 2 3 4 5 6 7 8 9 A B C D E F

0 0 1 2 3 4 5 6 7 8 9 A B C D E F

1 1 2 3 4 5 6 7 8 9 A B C D E F 10

2 2 3 4 5 6 7 8 9 A B C D E F 10 11

3 3 4 5 6 7 8 9 A B C D E F 10 11 12

4 4 5 6 7 8 9 A B C D E F 10 11 12 13

5 5 6 7 8 9 A B C D E F 10 11 12 13 14

6 6 7 8 9 A B C D E F 10 11 12 13 14 15

7 7 8 9 A B C D E F 10 11 12 13 14 15 16

8 8 9 A B C D E F 10 11 12 13 14 15 16 17

9 9 A B C D E F 10 11 12 13 14 15 16 17 18

A A B C D E F 10 11 12 13 14 15 16 17 18 19

B B C D E F 10 11 12 13 14 15 16 17 18 19 1A

C C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B

D D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C

E E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D

F F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E

Tab

la d

e S

uma

en b

ase

16 (

hexa

deci

mal

)

Page 12: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

* 0 1 2 3 4 5 6 7 8 9 A B C D E F

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

1 0 1 2 3 4 5 6 7 8 9 A B C D E F

2 0 2 4 6 8 A C E 10 12 14 16 18 1A 1C 1E

3 0 3 6 9 C F 12 15 18 1B 1E 21 24 27 2A 2D

4 0 4 8 C 10 14 18 1C 20 24 28 2C 30 34 38 3C

5 0 5 A F 14 19 1E 23 28 2D 32 37 3C 41 46 4B

6 0 6 C 12 18 1E 24 2A 30 36 3C 42 48 4E 54 5A

7 0 7 E 15 1C 23 2A 31 38 3F 46 4D 54 5B 62 69

8 0 8 10 18 20 28 30 38 40 48 50 58 60 68 70 78

9 0 9 12 1B 24 2D 36 3F 48 51 5A 63 6C 75 7E 87

A 0 A 14 1E 28 32 3C 46 50 5A 64 6E 78 82 8C 96

B 0 B 16 21 2C 37 42 4D 58 63 6E 79 84 8F 9A A5

C 0 C 18 24 30 3C 48 54 60 6C 78 84 90 9C A8 B4

D 0 D 1A 27 34 41 4E 5B 68 75 82 8F 9C A9 B6 C3

E 0 E 1C 2A 38 46 54 62 70 7E 8C 9A A8 B6 C4 D2

F 0 F 1E 2D 3C 4B 5A 69 78 87 96 A5 B4 C3 D2 E1

Tab

la d

e M

ult

ipli

car

en b

ase

16 (

hexa

deci

mal

)

Page 13: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

Aritmética con signo

Sea R la base y n el número de casillas o posiciones, entonces Rn es el total de números sin signo que se pueden representar en base R.

Por ejemplo. Con R=2 n=3 el total de números que pueden ser representados en base 2 utilizando 3 casillas son 8 y el rango es {0,7}, los números son {000, 001, 010, 011, 100, 101, 110, 111}.

{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 }

Forma general: rango = { 0, Rn-1}

Para números con signo, es necesario utilizar una casilla (la primera) para indicar si el número es negativo o positivo. Para el ejemplo anterior, el total de números con signo que podrían representarse serían 8, 4 positivos y 4 negativos, ya que la primera casilla indica el signo del número, si contiene un 0 es positivo y si contiene un 1 es negativo. Entonces el rango es {-3,3} y los números son {011,010,001,000,100,101,110,111}. { +3 , +2 , +1 ,+0 , -0 , -1 , -2 , -3 } (Signo y magnitud)

En general el rango para cualquier base utilizando números con signo es {-(Rn-1-1),(Rn-1-1)}

Page 14: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de NumeraciónComplemento

El complemento es una forma de representar números negativos.

Si la base es 2, existen dos clases de complementos: complemento a 1 y complemento a 2.

Complemento a 1. Se obtiene cambiando 1’s por 0’s y 0’s por 1’s. Ejemplo: Sea el número 00111100, su complemento a 1 es: 11000011.

Complemento a 2. Se aplica complemento a 1 al número y luego se suma 1 al resultado. Ejemplo: Sea el número 0110110 aplicando complemento a 1 obtenemos: 1001001, después se le suma 1, obteniéndose 1001010

Algoritmo de suma utilizando la representación de números negativos mediante signo y magnitud.

1.Sean anan-1…a0 y bnbn-1…b0 2 números binarios con signo y magnitud.

2.Tienen signos iguales ? (an=bn)

Si: sumar magnitudes quedando el resultado en cn-1cn-2…c0 , cn bn an

No: Comparamos magnitudes y dejamos en cn el signo del mayor. Restamos a la magnitud mayor la menor y el resultado queda en cn-1cn-2…c0

Page 15: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

3. La magnitud de cn-1cn-2…c0 excede el rango ?

Si: Indicar error (overflow – sobreflujo)

No: El resultado esta en cncn-1…c0

Ejemplo: Obtener el resultado de las siguientes sumas binarias a 4 dígitos

1) 5+(-3)=0101+1011 Los signos son diferentes, y la magnitud del primer número es > que la del segundo, así que restamos 011 de 101 y el signo del resultado será positivo

=0010 Su equivalente decimal es 2

2) (-4)+(-6)=1100+1110 Los signos son iguales, así que se suman magnitudes

Error ! Existe overflow

Algoritmo de suma algebraica en complemento a 1

1. Tomar el complemento a 1 de los números negativos

2. Sumar los operandos

3. Existe carry? Si: sumar 1 al resultado

4. Existe overflow? Si: indicar error

No: Escribir el resultado

+100 11101010

Overflow

Nota: El Overflow se genera cuando ya no hay lugar para un dígito más. En base binaria corresponde a un cambio de signo

Page 16: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Sistemas de Numeración

Ejemplo: Utilizar 4 dígitos

(-4) + (-3)= (0100)c1+(0011)c1= 1011+1100= 1 0111 Existe carry

=0111+1=1000 No existe overflow

Algoritmo de suma algebraica en complemento a 2

1. Tomar el complemento a 2 de los números negativos

2. Sumar los operandos

3. Existe overflow? Si: mensaje de error

No: Se toman las primeras n posiciones de derecha a izquierda como resultado ignorando el carry si es que lo hay.

Ejemplo: (4 dígitos)

7+(-5)= 0111+(0101)c2= 0111+1011= 1 0010 Existe carry, así que el resultado es 0010

Page 17: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Conceptos básicos

Operaciones Lógicas

Son aquellas que dan como resultado verdadero o falso.

Donde V es equivalente a 1 y F es equivalente a 0. Para trabajar con este tipo de operaciones se utilizan tablas de verdad.

Las operaciones lógicas básicas son:

1. Negación (not). Consiste en obtener el complemento a 1 del operando

2. Conjunción (and). La expresión es verdadera solo si todos sus operandos son verdaderos.

3. Disyunción (or). La expresión es verdadera si al menos uno de sus operandos es verdadero.

p ~p

v f

f v

p q p and q

v v v

v f f

f v f

f f f

p q p or q

v v v

v f v

f v v

f f f

ConjunciónNegación

Disyunción

Page 18: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP

Page 19: ENSAMBLADOR MC Hilda Castillo Z. BUAP Sistemas de Numeración Un sistema numérico es un conjunto de reglas y símbolos que nos permiten escribir números

ENSAMBLADOR

MC Hilda Castillo Z.BUAP