Download Slide 1 - dc.uba.ar

Document related concepts

Extensión de signo wikipedia , lookup

Sistema de numeración wikipedia , lookup

Notación posicional wikipedia , lookup

Numeración romana wikipedia , lookup

Representación de números con signo wikipedia , lookup

Transcript
Sistemas de numeración
Mariano M. Moscato
Organización del computador I
verano 2008
El plato del día
•
•
•
•
•
Números.
Sistemas posicionales.
Cambios de base.
Operaciones en otras bases.
Precisión finita.
Hablemos de números enteros
Cómo lo escribo
Qué pienso
• ¡Hay que diferenciar!

2
II
Pienso, luego escribo
• Cada concepto puede representarse
de varias maneras...
– En particular los enteros
• ¿Cómo escribimos números?
– Sistemas no posicionales
– Sistemas posicionales
Ejemplo posicional
• Sistema decimal
0
5
7
3
6
4
9
1
2
– Diez símbolos:
– ¿Cómo hacemos para saber qué número
representa la siguiente tira de símbolos?
6 1 7
8
(Otro) ejemplo posicional
• Sistema decimal
0
5
6
3
7 1
9
8
4
2
– Diez símbolos:
– ¿Cómo hacemos para saber qué número
representa la siguiente tira de símbolos?
6 1 7
La posición indica la potencia
por la que se debe multiplicar al valor
(denotado por el símbolo correspondiente)
Otro sistema decimal
• Los símbolos permitidos (y su significado)
0
1
2
0 1 2
3
4
5
3 4 5
6
7
8
9
6 7 8 9
diez
símbolos
• La posición al escribir cadenas numerales.
6
10
6
2
600 +
1
1
10
1
10 +
0
7
10
7
7=
¡Manos a la obra!
• ¿Qué números pueden representar las
siguientes cadenas?
10
617
2008
ORGA1
• Dada la representación de un número,
¿puedo saber qué base se está utilizando?
En general
En los sistemas posicionales nos importa:
• Los símbolos permitidos
– Cuántos son
– Cuáles son
– Qué significa cada uno
• La posición al escribir cadenas numerales.
Leo, luego escribo
• Ya sabemos leer números en cualquier
base. ¿Y cómo los escribimos?
• Teorema de la división
Sean a ∈ Z y b ∈ N.
Existen q, r ∈ Z con 0 < r < b tales que
a=b·q+r
Además, q y r son únicos.
Escribir
• Escribir los siguientes números en
binario, octal y hexadecimal
– Diez
– Quinientos veinte
Leer, escribir y… ¡operar!
• Sumando (como en la primaria)
En decimal
acarreo
1
1
En base 3
acarreo
2
1
3
+
2
1
0
2
2
0
1
1
1
0
+
1
9
3
4
0
5
7
1
Leer, escribir y… ¡operar!
• Multiplicando (como en la primaria)
En base 3
x
1
2
2
1
Éramos pocos y parió la abuela
Si sólo podemos escribir tiras de símbolos
de longitud fija:
¿cuántos números podemos representar?
¿de qué depende?
¡Precisión fija!
Save game
Por ahora sabemos
• Leer naturales
• Escribir naturales
• Operar con naturales
¿Y los enteros?
Tipos de codificación
(de precisión fija)
• Sin signo (me hago el gil)
– Codifico en la base indicada
• Signo & magnitud
– Uso un casillero para indicar si es negativo
• Complemento
– Represento -n como 2k - n
• Exceso m
– Represento n como m + n
A codificar números
Base 2
4 bits
Signo &
magnitud
-2
Complemento
Exceso 20
1010
?
1110
OVERFLOW
-6
1110
1010
1110
-8
OVERFLOW
1000
1100
A codificar números
Base 2
8 bits
Signo &
magnitud
-2
Complemento
Exceso 20
1000 0010
1111 1110
0001 0010
-6
1000 0110
1111 1010
0000 1110
-8
1000 1000
1111 1000
0000 1100
?
A codificar números
Base 2
8 bits
Signo &
magnitud
Complemento
Exceso 20
-2
1000 0010
1111 1110
0001 0010
-6
1000 0110
1111 1010
0000 1110
-8
1000 1000
1111 1000
0000 1010
En resumen
• ¿Acerca de qué fue la clase de hoy?
– Acerca de cómo escribir números (enteros).
• ¿Qué es “cambiar de base” un número?
– Escribirlo de otra manera.
• ¿Qué son las codificaciones?
– Formas de representar (algunos) enteros con
(algunos) naturales