Descargar la presentación
La descarga está en progreso. Por favor, espere
43
M.C. José Andrés Vázquez Flores
Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación ENSAMBLADOR M.C. José Andrés Vázquez Flores Primavera 2013
44
Sistemas de Numeración
45
Introducción Un sistema de numeración es un conjunto de símbolos y reglas de generación que permiten construir todos los números válidos en el sistema. Un sistema de numeración puede representarse como: N =(S,R) donde: N es el sistema de numeración considerado. S es el conjunto de símbolos permitidos en el sistema. R son las reglas que nos indican qué números son válidos en el sistema, y cuáles no. N p.ej. decimal, binario, etc. S En el caso del sistema decimal son {0,1...9}; en el binario son {0,1}; en el octal son {0,1...7}; en el hexadecimal son {0,1...9,A, B, C, D, E, F} R En un sistema de numeración posicional las reglas son bastante simples, mientras que la Numeración romana requiere reglas algo más elaboradas.
46
Introducción Estas reglas son diferentes para cada sistema de numeración considerado, pero una regla común a todos es que para construir números válidos en un sistema de numeración determinado sólo se pueden utilizar los símbolos permitidos en ese sistema. Para indicar en qué sistema de numeración se representa una cantidad se añade como subíndice a la derecha el número de símbolos que se pueden representar en dicho sistema.
47
Representación Sea R (base o radio) un número mayor o igual que 2, entonces pueden representarse números entero no negativos como una cadena de dígitos escogidos entre 0, 1, 2, ..., R-1. 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}
48
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+…+a1R Expresión 1 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). Representación polinomial (expresión 1)
49
Conversión entre Bases
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 = = 38
50
Conversión entre Bases
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. 4*53+3*52+0*51+2*50 = 11*123+10*122+2*120 = 11* *221+2*1 = = En Base 3
51
Conversión entre Bases
+ 1 2 * 10 11 12*12 101 12 221 221*12 1212 221 11122
52
Conversión entre Bases
Para pasar un número entero N de base 10 a base R se deben realizar las siguientes operaciones: Dividir el número N en base 10 entre la base a convertir. Se toma el cociente Ci y se vuelve a dividir entre la base. Este proceso se continua hasta que el cociente Cn sea menor que R. El número en base 10, se toma primero el último cociente obtenido (Cn) y de ahí del último residuo al primero.
53
Conversión entre Bases
C C Cn R N R C1 R Cn-1 bm bm b1 Donde Cn<R El número en base R es: Cn b1 … bm-1 bm …
54
Conversión entre Bases
Convertir (541)10 ( )3. 01 Por lo que (541)10 (202001)3.
55
Conversión entre Bases
Para convertir la parte fraccionaria 0.d de base 10 a base R, se procede: Se toma la fracción 0.d y se multiplica por la base. Del resultado obtenido di.bi se vuelve a tomar la fracción 0.bi y se procede de igual manera. Este proceso se puede continuar en n – iteraciones o bien cuando la parte entera di sea cero. La parte entera di de los resultados, va a conformar la fracción en base R.
56
Conversión entre Bases
0.d * R = d1.b1 0.b1 * R = d2.b2 … 0.bt * R = dt+1.bt+1 Donde dt+1 puede ser cero. La fracción en base R es: 0.d1 d2 d3 … dt dt+1
57
Conversión entre Bases
Convertir (0.75)10 ( )2. 0.75 * 2 =1.5 0.5 * 2 = 1.0 Por lo que (0.75)10 (0.11)2. Convertir (0.256)10 ( )7. 0.256 * 7 = 1.792 0.792 * 7 = 5.544 0.544 * 7 = 3.808 Por lo que (0.256)10 (0.153)7 La parte decimal ya es cero
58
Conversión entre Bases
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 i>=1 hacer num num*R+ai i i-1 fin_mientras 3. Fin
59
Conversión entre Bases
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) ai p, i i+1, x q hasta q=0 3. Fin
60
Conversión entre Bases
Conversión de números de base X a base 10 (donde X 10). Algoritmo 3. Números fraccionarios 1. i m, num 0 2 .Mientras i>=1hacer num (num+bi)/X i i-1 fin_mientras 3. Fin
61
Conversión entre Bases
Conversión de números de base 10 a base S (donde S 10). Algoritmo 4. Números fraccionarios 1. i 1 2. Mientras i <= m hacer x x*s y [x] (parte entera) x x-y, bi y, i i+1 fin_mientras 3. Fin
62
Conversión entre Bases
Conversión de potencias de 2 Para convertir números de base 2 a base k=2x donde x>1 y es un número entero, se llevan a cabo los siguientes pasos: 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. 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. Se sustituyen los grupos por los dígitos correspondientes en la base k.
63
Conversión entre Bases
( )2 ( ) Donde 16=24 C Por lo que ( )2 (394.6C)16 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. ( )8 ( )2 Donde 8=23 Por lo que ( )8 ( )2
64
Operaciones Aritméticas
Existen varias operaciones aritméticas que se pueden ejecutar en números binarios y hexadecimales, por ejemplo, se puede sumar, restar, multiplicar, dividir y otras operaciones aritmética. Suma y multiplicación en binario: + 1 * 10 Carry o acarreo
65
Operaciones Aritméticas
Ejemplo:
66
Operaciones Aritméticas
Para la multiplicación y división: * 100
67
Tabla de suma en base 16 + 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13
1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E Tabla de suma en base 16
68
Tabla de multiplicar en base 16
* 1 2 3 4 5 6 7 8 9 A B C D E F 10 12 14 16 18 1A 1C 1E 15 1B 21 24 27 2A 2D 20 28 2C 30 34 38 3C 19 23 32 37 41 46 4B 36 42 48 4E 54 5A 31 3F 4D 5B 62 69 40 50 58 60 68 70 78 51 63 6C 75 7E 87 64 6E 82 8C 96 79 84 8F 9A A5 90 9C A8 B4 A9 B6 C3 C4 D2 E1 Tabla de multiplicar en base 16
69
Números Negativos Signo y Magnitud: En esta representación, el dígito más significativo indicará el signo del número, esto es, el 1 representa un valor negativo y el 0 un valor positivo y los restantes dígitos serán la magnitud. Representación a 4 dígitos: 0000 +0 0001 +1 0010 +2 0011 +3 0100 +4 0101 +5 0110 +6 0111 +7 1000 -0 1001 -1 1010 -2 1011 -3 1100 -4 1101 -5 1110 -6 1111 -7
70
Números Negativos Algoritmo de suma y resta:
Sean an an-1 … a0 y bn bn-1 … b0 números binarios en signo y magnitud. Tienen signos iguales? (an = bn) Si: Sumar las magnitudes quedando el resultado en: cn-1 … c0 y cn an bn. No: Comparamos magnitudes y dejamos en cn el signo del mayor. Restamos a la magnitud mayor la menor y el resultado queda en cn-1 … c0. La magnitud cn-1 … c0 excede el rango? Si: Indicar un error (Overflow) No: el resultado en cn cn-1 … c0.
71
Números Negativos Complemento a 1 (C´1): Esta representación se obtiene para los números negativos y se realiza en base al número positivo en binario convirtiendo los 0 en 1 y los 1 en 0. Representación a 4 dígitos: 0000 +0 0001 +1 0010 +2 0011 +3 0100 +4 0101 +5 0110 +6 0111 +7 1111 -0 1110 -1 1101 -2 1100 -3 1011 -4 1010 -5 1001 -6 1000 -7
72
Números Negativos Algoritmo de suma y resta:
Tomar el C´1 de los números negativos. Sumar los operandos. Existe carry? Si: Sumar uno al resultado. Hay overflow? Si: Indicar un error (Overflow) No: el resultado en cn cn-1 … c0.
73
Números Negativos Complemento a 2 (C´2): Esta representación se obtiene para los números negativos y se obtiene efectuando primero el C´1 y después sumar uno. Representación a 4 dígitos: 0000 +0 0001 +1 0010 +2 0011 +3 0100 +4 0101 +5 0110 +6 0111 +7 0000 -0 1111 -1 1110 -2 1101 -3 1100 -4 1011 -5 1010 -6 1001 -7 1000 -8
74
Números Negativos Algoritmo de suma y resta:
Tomar el C´2 de los números negativos. Sumar los operandos. Se toman n (menos significativas) posiciones si hay carry. Hay overflow? Si: Indicar un error (Overflow)
75
Operaciones Lógicas Conjunción (.) Disyunción (+)
Negación (-) Or- exclusivo () p q p.q p+q 1 p -p q pq 1
76
Códigos Toda la información en la computadora es almacenada en dígitos binarios, los cuales son representados por medio de un agrupamiento de los mismos como caracteres de instrucciones o números. Estos agrupamientos definen códigos, de ahí que un código pueda definirse como un conjunto de reglas para interpretar grupos de bits.
77
Códigos BIT: Dígito binario, es una celda de almacenamiento, se puede almacenar un 0 o un 1. BYTE: Unidad de almacenamiento equivalente a 8 bits. Código ASCII: Acrónimo inglés de American Standard Code for Information Interchange, es un código de caracteres basado en el alfabeto latino tal como se usa en inglés moderno y en otras lenguas occidentales. Fue creado en 1963.
78
Código EBCDIC: Extended Binary Coded Decimal Interchange Code, es un código estándar de 8 bits usado por computadoras mainframe IBM. EBCDIC es un código binario que representa caracteres alfanuméricos, controles y signos de puntuación. Código Gray: Es un sistema de numeración binario en el que dos valores sucesivos difieren solamente en uno de sus dígitos. Fue diseñado para prevenir señales de los switches electromecánicos. Actualmente es usado para facilitar la corrección de errores en los sistemas de comunicaciones.
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.