Apuntes de Informática Edgar F. Flores Muñoz Unidad 3. Sistema

Anuncio
Apuntes de Informática
Edgar F. Flores Muñoz
Unidad 3. Sistema Operativo
3.1 Definición y tareas del sistema operativo.
El sistema operativo es el conjunto de programas que organiza y administra los recursos de la
computadora. Las tareas que cumple el sistema operativo son:
•
•
•
•
•
•
•
•
•
Administra los recursos como discos, cintas, impresoras, memoria, etc. (hardware)
Organiza el tiempo de uso de los recursos físicos (hardware).
Controla la entrada y salida de datos, representado por I/O de Input/Output.
Maneja la recuperación después de errores.
Administra la memoria.
Administra el procesador (CPU).
Asigna tiempo de proceso a trabajos y tareas (software).
Provee seguridad.
Provee de comandos al usuario.
Para redondear y dejar el concepto de sistema operativo de manera general, hay que indicar que el
conjunto de todo el hardware y software es lo que llamaremos recursos de la computadora o recursos
del sistema. Y a cada programa que conforma al sistema operativo le llamaremos comando.
El concepto de sistema operativo no es aplicable en las primeras computadoras, ya que todo se
manejaba por medio de hardware, incluso la captura de programas y datos se hacia ya sea por medio de
interruptores (switches) que en una posición representaban 0 y en la otra representaban 1 o por medio
de tarjetas perforadas, en donde una perforación representaba un estado y donde no hubiera perforación
representaba el otro estado (0 o 1). Los primeros indicios de un sistema operativo real aparecen durante
la tercer generación de computadoras.
En la actualidad el sistema operativo es considerado como la pieza de software más importante, ya que
sin él el resto de los programas no podrían ejecutarse, ya que muchas de las tareas, como la carga de las
instrucciones y datos en memoria se lo delegan completamente al sistema operativo, incluso,
dependiendo del sistema operativo sera la forma y el tipo de programación que tengan los programas a
ejecutar en la computadora.
3.2 Tipos de sistemas operativos
Podemos decir que existen tantos tipos de sistemas operativos como tipos de computadoras han
existido, pero seguramente usted ha escuchado hablar acerca de Windows, en sus diversas modalidades
3.0,95, 98, 2000, ME, XP, que pertenece a la compañía Microsoft, o incluso de la misma Microsoft
habrá escuchado hablar del MS-DOS, pero hay que señalar que no son los únicos sistemas operativos
que existen, así como las PC's no es la única arquitectura de computadoras que existe. A continuación
listaremos algunos de los sistemas operativos más usados, así como sus principales características.
Sistema Operativo
Microsoft
Tipo de computadora donde se utiliza
PC's con procesadores Intel o compatibles de Intel
(Intel x86), como AMD o Cyrix (Estas
características son comunes tanto para MS-DOS
como para las diversa versiones de Windows)
Principales Características
Apuntes de Informática
Sistema Operativo
Edgar F. Flores Muñoz
Tipo de computadora donde se utiliza
* MS-DOS
Principales Características
* Monousuario
* Monotarea
* Interfaz de Texto
* No distingue las mayúsculas de las minúsculas
en la ejecución de comandos.
* Windows 1-3.11
Realmente no es considerado un sistema
operativo, ya que trabaja sobre alguna versión de
MS-DOS instalado previamente.
* Monousuario
* Multitarea
* Interfaz de Gráfica
* No distingue las mayúsculas de las minúsculas
en la ejecución de comandos.
* Windows 95,98, ME
No requiere de una previa instalación de MS-DOS * Monousuario
* Multitarea
* Interfaz de Gráfica
* No distingue las mayúsculas de las minúsculas
en la ejecución de comandos.
* Windows NT, 2000
* Monousuario ( a pesar que puede reconocer a
varios usuarios de una misma computadora)
* Multitarea
* Interfaz de Gráfica
* Agrega seguridad y autenticación de usuarios
* No distingue las mayúsculas de las minúsculas
en la ejecución de comandos.
* Windows XP
* Monousuario ( a pesar que puede reconocer a
varios usuarios de una misma computadora)
* Multitarea
* Interfaz de Gráfica
* Seguridad y autenticación de usuarios
* No distingue las mayúsculas de las minúsculas
en la ejecución de comandos.
Apple Macintosh
* Mac OS hasta versión 9
Macintosh
* Monousuario
* Multitarea
* Interfaz de Gráfica
* Mac OS X (UNIX)
Mac G4, se planea que posteriormente para Intel
x86.
* Multiusuario
IBM PS/2
* Monousuario
* Multitarea
Esta versión se basa en el Kernel de una
distribución de BSD agregando la interfaz gráfica * Interfaz de Gráfica
de macintosh
* Distingue las mayúsculas de las minúsculas en
la ejecución de comandos.
IBM
* OS/2
* Multitarea
* Interfaz de Gráfica
* Buenas capacidades para el trabajo en red..
Apuntes de Informática
Edgar F. Flores Muñoz
Sistema Operativo
* VMS
Tipo de computadora donde se utiliza
IBM Mainframe
Principales Características
* Multiusuario
* Multitarea
* Interfaz de Texto
* Distingue las mayúsculas de las minúsculas en
la ejecución de comandos.
* AIX (UNIX)
Minicomputadores IBM
* Multiusuario
* Multitarea
* Multiproceso
* Interfaz de Texto / Gráfica
* Distingue las mayúsculas de las minúsculas en
la ejecución de comandos.
UNIX
Son distintas las plataforma sobre las cuales
trabaja el sistema operativo Unix, aquí
presentamos algunas de ellas.
* HP-UX (HP)
HP
* Multiusuario
* Solaris (Sun)
Sparc e Intel x86
* Multitarea
* Irix (Silicon Graphics)
Silicon Graphics
* Multiproceso
* GNU/Linux (Diversas distribuciones)
Intel x86, DEC Alpha, UltraSPARC , G3 y G4
* Interfaz de Texto / Gráfica
* BSD (Diversas distribuciones)
Intel x86, DEC Alpha, UltraSPARC y PC-98.
* Distingue las mayúsculas de las minúsculas en
la ejecución de comandos.
Desarrollo original de la Universidad de Bearkley,
California
Para estos apuntes, utilizaremos como base al sistema operativos MS-DOS para la linea de comandos y
a Windows 9x para la interfaz gráfica de usuario, GUI, por el lado de Microsoft, y por el lado de Unix
consideraremos a GNU/Linux como la base en la línea de comandos y a los escritorios KDE y
GNOME para las GUI.
3.3Comandos de los sistemas operativos MS-DOS y GNU/Linux
Un poco de historia:
MS-DOS o simplemente DOS, es el sistema operativo que creo la base para la mayor corporación de
software que ha existido, Microsoft. DOS, que significa Sistema Operativo de Discos (MS-DOS,
Microsoft - Disk Operating System), ha sido utilizado desde 1981 por las computadoras PC de IBM o
compatibles. A pesar de la gran difusión de Windows y entornos gráficos, MS-DOS sigue siendo
usado.
Linux, o mejor dicho, GNU/Linux, es un sistema operativo cuyo núcleo fue creado originalmente por
Linus Torvalds. A diferencia de Windows y otros sistemas operativos propietarios, ha sido desarrollado
por miles de usuarios de computadoras de todo el mundo.
La ventaja de GNU/Linux es que pertenece a otra filosofía de desarrollo del software: la del código
abierto. El código abierto, a diferencia del software propietario, es desarrollado bajo la premisa de que
los programas son una forma de expresión de ideas y que las ideas, como en la ciencia, son patrimonio
de la humanidad y deben ser compartidas con todo el mundo. Para lograr esto, el código abierto expone
el código fuente de sus programas a quien desee verlo, modificarlo o copiarlo.
Apuntes de Informática
Edgar F. Flores Muñoz
La línea de comandos.
La línea de comandos es el lugar donde podemos escribir las ordenes, ejecutar los programas o
comandos que deseemos en el sistema operativo.
La línea de comandos se conforma por el PROMPT o indicador de sistema.
Ejemplos de prompt en MS-DOS, que nos indican la unidad de disco y directorios de trabajo.
C:\Windows\Escritorio>
A:\>
D:\Documentos>
Unidad C: directorio \Windows\Escritorio
Unidad A: directorio \ (raíz)
Unidad D: directorio \Documentos
Es importante señalar que la \ es la diagonal que separa directorio en MS-DOS y Windows, mientras
que la / sirve muchas veces para separar parámetros de los comandos.
Ejemplos de prompt en GNU/Linux, en GNU/Linux no existen las unidades de disco con nombre de
letra como en MS-DOS o MS-Windows, si no como directorios y el prompt en ocasiones indica el
directorio actual de trabajo.
$
[ed@softed ed]$
#
[root@softed root]#
Los prompt que contiene el símbolo de $, son de un usuario común dentro de GNU/Linux, el primero
indica nada, pero el segundo nos dice el nombre de usuario (ed), el nombre de la máquina (softed) y el
directorio actual (ed).
Los prompt que contiene el símbolo de #, son de un usuario administrador dentro de GNU/Linux, el
primero indica nada, pero el segundo nos dice el nombre de usuario (root), el nombre de la máquina
(softed) y el directorio actual (root).
Es importante señalar que la / es la diagonal que separa directorio en GNU/Linux, mientras que el (guión) sirve muchas veces para separar parámetros de los comandos, la \ recibe el nombre de escape,
no confundir con la tecla ESC o ESCAPE, ya que en GNU/Linux hay caracteres que tiene alguna
utilidad implícita en la línea de comandos, anteponiendo \ le podemos quitar dicha utilidad o propiedad
y solamente dejarlo como el carácter que queremos representar.
De esta forma, si queremos hacer referencia a un nombre de archivo que contenga espacios en blanco,
debemos anteponer el \ al espacio de manera que no se entienda como división de parámetros si no
como parte del nombre de archivo.
$ cd Mis\ Documentos
Sirve para entrar al directorio ''Mis Documentos''
Archivos y Directorios
Los Archivos y Directorios son los medios lógicos con los cuales podemos almacenar, clasificar y y
Apuntes de Informática
Edgar F. Flores Muñoz
organizar nuestros datos y programas.
Archivo: Conjunto de informaciones o instrucciones organizadas en registros y que se almacenan
como una sola unidad que puede manejarse en bloque. Los archivos contiene pues los datos y las
instrucciones que usamos.
El nombre completo de un archivo se compone por un nombre y una extensión, unidos por un punto, el
nombre debe contener al menos 1 carácter y la extensión puede o no existir. Las extensiones nos
ayudan a identificar que tipo de archivo tenemos, así algunas extensiones son:
Extensión
Tipo de Archivo
Extensión
Tipo de Archivo
Extensión
Tipo de Archivo
.txt
Archivo de texto
.doc
Documento
.dat
Archivo de Datos
.gif
Imagen
.bmp
Imagen
.jpg
Imagen
.c
Código fuente de un
programa en Lenguaje C
.pas
Código fuente de un
programa en Lenguaje
Pascal
.java
Código fuente de un
programa en Lenguaje
Java
.exe
Programa Ejecutable en
MS-DOS y Windows
.com
Comando del sistema
operativo MS-DOS
.bat
Archivo de proceso por
lotes
.sh
Shell de Unix
.wav
Archivo de audio
.mp3
Archivo de audio
comprimido
.mov
Archivo de vídeo
.mpg
Archivo de vídeo
.avi
Archivo de vídeo
Para MS-DOS los archivos ejecutables, es decir, los que contienen programas, deben tenerla extensión .
EXE o .COM, en GNU/Linux, esto tiene más que ver con las propiedades del archivo que con la
extensión del mismo.
Directorio (Folder o Carpeta) : división lógica dentro de un medio de almacenamiento, para organizar y
categorizar archivos y subdirectorios.
Como mencionamos antes, en MS-DOS y Windows la diagonal \ sirve para separar directorios y en
GNU/Linux (Unix en general) la diagonal / es la que separa directorios.
Para MS-DOS las unidades reciben el nombre de las letras del abecedario mientras que para
GNU/Linux las unidades de disco se encuentran relacionadas, montadas, a un directorio.
De tal forma que si queremos hacer referencia al directorio tareas en un disco flexible deberemos
hacerlo de la siguiente manera:
MS-DOS
A:\tareas
A: representa el disco flexible
Linux
/mnt/floppy/tareas
/mnt/floppy es el directorio
relacionado al disco flexible
A continuación veremos algunos de los comandos principales de los sistemas operativos MS-DOS y
GNU/Linux (Unix en general).
Apuntes de Informática
Acción
Edgar F. Flores Muñoz
Comando MS-DOS
Comando GNU/Linux
Comandos de manipulación
de Directorios
Creación de directorio
Cambio de directorio
Eliminar directorio
Ver o listar el contenido de
un directorio
MD (Make Directory)
mkdir (make directory)
Uso:
Uso:
C:\> md nombre_directorio
$ mkdir nombre_directorio
CD (Change Directory)
cd (change directory)
Uso:
Uso:
C:\> cd nombre_directorio
$ cd nombre_directorio
Nota: Para salir de un directorio se usa cd .. y si se ejecuta cd
sin darle nombre de directorio, muestra el nombre del
directorio actual
Nota: Para salir de un directorio se usa cd .. y si se ejecuta
cd sin darle nombre de directorio, cambia al usuario a su
directorio hogar
RD (Remove Directory)
rm -R (remove)
Uso:
Uso:
C:\> rd nombre_directorio
$ rm -R nombre_directorio
Nota: El directorio debe estar vacío
Nota: El comando rm es para borrar archivos, no existe un
comando para remover directorios, pero puede usarse este
comando con el parámetro -R para que remueva el
directorio con todo y su contenido.
DIR (Directory)
ls (list)
Uso:
Uso:
C:\> dir
$ ls
Nota: Existen parámetros para cambiar el comportamiento del
comando DIR, aquí mostramos algunos
Nota: Existen parámetros para cambiar el comportamiento
del comando ls, aquí mostramos algunos
/w ocupa todo el ancho de la pantalla
-l muestra más detalles
/p presenta por pantallas
-t ordena por fecha
/s busca dentro de los subdirectorios
Ver el nombre del directorio
actual
CD (Change Directory)
pwd (print working directory)
Uso:
Uso:
C:\> cd
$ pwd
COPY
cp (copy)
Uso:
Uso:
C:\> copy origen destino
$ cp origen destino
Nota: Tanto el origen como en el destino se puede especificar
la unidad de disco, directorios y archivos a copiar, puede
omitirse el destino, de tal forma que MS-DOS tomara como
destino el directorio en uso
Nota: Debe especificarse tanto el origen como el destino,
indicándose los directorios, para el directorio actual se usa
. (punto)
DEL (Delete)
rm (Remove)
Uso:
Uso:
C:\> del nombre_archivo
$ rm nombre_archivo
Comandos de manipulación
de Archivos
Copiar un archivo
Borrar un archivo
Nota: Como se vio anteriormente también se usa este
comando para remover directorio al usar el parámetro -R
Ver el contenido de un
archivo
TYPE
cat (concatenate files and print on the standard output)
Uso:
Uso:
C:\> type nombre_archivo
$ cat nombre_archivo
Apuntes de Informática
Acción
Crear un archivo de texto
Edgar F. Flores Muñoz
Comando MS-DOS
Comando GNU/Linux
COPY CON
cat >
Uso:
Uso:
C:\> copy con nombre_archivo
$ cat > nombre_archivo
Nota: Se usa el comando copy con el parámetro con que
significa CONSOLE, consola, es decir que el origen es la
consola, teclado y el destino es el archivo que se quiere crear.
Nota: Se usa el comando cat con el > que redirecciona la
salida estándar, la pantalla, a un archivo, en este caso el
comando cat al no darle un archivo de entrada, toma la
entrada estándar, el teclado, como el archivo que debe
procesar creando de esta forma el nuevo archivo.
Para esta forma de crear el archivo, se debe escribir el
contenido deseado y después presionar Control-Z y Enter
Para terminar de capturar el contenido del archivo, se
presiona Control-D al inicio de una nueva línea.
Mover un archivo
Cambiar el nombre de un
archivo
MOVE
mv (Move)
Uso:
Uso:
C:\> move archivo_origen directorio_destino
$ move archivo_origen archivo_destino
REN (Rename)
mv (Move)
Uso:
Uso:
C:\> ren nombre_original nombre_nuevo
$ mv nombre_original nombre_nuevo
CLS (CLear Screen)
clear
Uso:
Uso:
C:\> cls
$ clear
MS-DOS no maneja contraseñas de usuario
passwd (password)
Configuración del Sistema
Limpiar pantalla
Cambio de contraseña de
usuario
Uso:
$ passwd
Cambio de Fecha
DATE
date
Uso:
Uso:
C:\> date
# date [MMDDhhmm[[CC]YY][.ss]]
Nota: Para cambiar la fecha y la hora se requiere de
privilegios de administrador, en caso de no tenerlos, al
ejecutar date sin parámetros, solo se despliega la fecha y
hora del sistema.
Cambio de Hora
TIME
Se usa date
Uso:
C:\> time
Manejo de Discos
Cambiar etiqueta del disco
LABEL
Uso:
C:\> label unidad:
Nota: unidad puede ser A, B, C, D, o cualquier unidad de disco
a la cual se le pueda cambiar la etiqueta, por lo general esto no
aplica a los discos compactos.
Formateo de Discos
FORMAT
Uso:
C:\> format unidad:
Nota: unidad puede ser A, B, C, D, o cualquier unidad de disco
a la cual se le pueda formatear, por lo general esto no aplica
para los discos compactos y no debe hacerse en un disco duro
funcional, ya que se borra toda la información del disco.
No existe un equivalente, ya que para GNU/Linux no se
les pone etiqueta a los discos.
Apuntes de Informática
Edgar F. Flores Muñoz
3.4 Interfaces gráficas (MS-Windows, KDE, GNOME)
Un poco de historia de la GUI (Graphical User Interface, Interfaz Gráfica de Usuario)
No, Steve, creo que es más como que ambos teníamos al vecino rico llamado Xerox, e irrumpiste para robar el jueguito de TV, y
encontraste que yo había estado allí primero, y dijiste. '¡Hey no es justo! ¡Yo quiero robar el jueguito de TV!' - Respuesta de Bill Gates
después de que Steve Jobs acusara a Microsoft de plagiar el GUI de Apple para Windows 1.0 (Tomado y traducido de http://www.applehistory.com)
Una GUI es una interfaz gráfica de usuario para la computadora. La mayoría de la computadoras usan
un GUI hoy en día, ya que provee de ventanas, menús desplegables, botones, barrar de desplazamiento,
iconos, imágenes y el ratón o dispositivo señalador. Las primeras interfaces de usuario para
computadora no eran gráficas o visualmente orientadas; eran totalmente en texto y usando comandos de
linea con el teclado. MS-DOS es un ejemplo de un Sistema Operativo basado en el control por medio
del teclado y presenta todo en modo texto, y es usando aun hoy en día.
La primer interfaz gráfica de usuario fue desarrollada por Xerox Corporation en su Centro de
Investigación en Palo Alto (PARC) en la década de los 70's, pero no fue sino hasta la década de los 80's
que las GUIs se volvieron populares y extendidas. Para esta época el poder de los CPU y de los
monitores era el necesario para una GUI efectiva y lo suficientemente barata para el uso en las
computadoras caseras.
En 1983 sale al mercado Apple Lisa, la primer computadora casera en usar una GUI.
En 1984 Apple lanza Macintosh, mejorando la GUI de Lisa.
En 1985 Microsoft libera Windows 1.0, comenzando con esto la guerra con Apple.
Posteriormente cada uno de los sistemas entre batallas legales y mejoramientos han llegado a las
actuales versiones de MS-Windows XP y Mac OS X (el cual esta basado en una distribución de BSD).
Por el lado del código abierto, surgen básicamente dos GUIs importante KDE y GNOME.
En 1998 se libera la versión 1.0 de KDE y en 1999 la versión 1.0 de GNOME. En general funcionan
para Sistemas Operativos basados en UNIX, por lo que ambas GUI son las preferidas por los usuarios
de GNU/Linux.
Algo importante de mencionar del GNOME es el hecho que es un proyecto iniciado por mexicanos,
dicho grupo liderado por Miguel de Icaza, dio inicio en 1997 al GUI que actualmente usa Linux Red
Hat (una de las compañías más importante en cuanto a GNU/Linux se refiere) como base para su
Bluecurve GUI, lo cual nos da pauta a que en México no debemos ser únicamente consumidores de
tecnología, si no también productores de la misma.
Apuntes de Informática
Edgar F. Flores Muñoz
Unidad 8. Estructura de la información
8.1 Sistemas numéricos posicionales
A lo largo de la historia del hombre han existido diversas maneras de representar cantidades
(información numérica), en un inicio, se contaba con piedras o los dedos, para posteriormente dar lugar
a los diversos sistemas de numeración como el romano, maya o árabe por mencionar algunos.
Es del sistema arábigo de numeración del cual se desprende nuestro actual sistema numérico, que
consta de 10 dígitos, 0,1,2,3,4,5,6,7,8,9, con los cuales podemos representar cualquier cantidad que
queramos al combinar dichos dígitos en distintas posiciones.
De esta manera la combinación de dígitos 1532 nos representa un millar, cinco centenas, tres decenas y
2 unidades, esto gracias a que las distintas posiciones de los dígitos les dan un múltiplo para saber que
cantidad realmente representa cada uno de ellos. Dicho múltiplo esta dado por la base en que se
encuentre representado el número y la base estara elevada a la posición del dígito, las posiciones de los
dígitos se determinan como positivos hacia la izquierda y como negativos hacia la derecha del punto
decimal, siendo el primer dígito a la izquierda del punto decimal la posición cero.
número
1
5
3
2
.
Posición
3
2
1
0
Punto decimal
Dígito
Base
Posición
Múltiplo
Valor
1
10
3
1000
1000
Millares
5
10
2
100
500
Centenas
3
10
1
10
30
Decenas
2
10
0
1
2
Unidades
Para nosotros el sistema de numeración más natural es aquel que consta de 10 dígitos, pero dentro del
universo de sistemas de numeración posicionales, existen una infinidad de sistemas de numeración con
distintas bases, y la base del sistema numérico es la cantidad de dígitos con que contamos para
representar cualquier cantidad.
Base
Dígitos
10 0,1,2,3,4,5,6,7,8,9
2 0,1
8 0,1,2,3,4,5,6,7
16 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F *
•
Como en el caso de la base 16, las bases numéricas mayores a 10 necesitan dígitos nuevos para representar las cantidades mayores o
iguales a 10, por lo que se usan las letras del abecedario para representar estas cantidades, considerando el ordenalfabético para ir
asignando desde el número 10 hasta la base deseada de la A hasta la Z, cabe mencionar que si se requiere un sistemanumérico con
una base mayor a 37 (10 dígitos numéricos y 27 letras) será necesario definir la simbología a usar en cantidades mayores o iguales a
37.
Apuntes de Informática
Edgar F. Flores Muñoz
Las computadoras al ser dispositivos electrónicos trabajan a base de impulsos eléctricos, de encendidos
y apagados, de bits y es por esto que hay que conocer la manera en que se transforma la información
dentro de la computadora, de como un número 33 de base 10 se convierte en 100001 de base 2.
Conversión de números de base 10 a cualquier base (n)
Utilizaremos un ejemplo para ver la forma de convertir un número de base 10 a cualquier base
Convertir 355.3125 en base 10 a base 2
Debe hacerse la conversión en dos partes, la parte entera y la parte decimal.
Parte entera:
355/2 = 177 residuo 1
177/2 = 88 residuo 1
88 / 2 = 44 residuo 0
44 / 2 = 22 residuo 0
22 / 2 = 11 residuo 0
11 / 2 = 5 residuo 1
5 / 2 = 2 residuo 1
2 / 2 = 1 residuo 0
1 / 2 = 0 residuo 1
1. Se divide el número entre la base a la que se quiere convertir,
quedando un residuo y un cociente (divisiones enteras)
2. Se divide el cociente de nuevo tantas veces como sea necesario hasta
que este sea cero.
3. Se toman los residuos y se acomodan de derecha a izquierda del
primero que salio al último y ese es el número en la base deseada.
101100011
Parte decimal:
0.3125 x 2 = 0.625
1. Se multiplica el decimal por la base a la que se quiere convertir
0.625 x 2 = 1.25
2. Se toma la parte decimal del resultado y se vuelve a multiplicar por la
base, se hace esto tantas veces sea necesario hasta tener una parte
decimal nula.
0.25 x 2 = 0.5
0.5 x 2 = 1.0
3. Se toman los enteros de los resultados y se acomodan de izquierda a
derecha del primero al último y ese es el número decimal en la base
deseada.
0.0101
Hecho lo anterior podemos afirmar que 355.3125 en base 10 es igual a 101100011.0101 en base 2
Ejemplo: ( 1000.25 )10 = (
)2 = (
)16 = (
La parte entera a base 2
)8
La parte decimal a base 2
1000 / 2 =
500 residuo
0
0.25 x 2 =
0.5 entero
0
500 / 2 =
250 residuo
0
0.5 x 2 =
1.0 entero
1
250 / 2 =
125 residuo
0
125 / 2 =
62 residuo
1
62 / 2 =
31 residuo
0
31 / 2 =
15 residuo
1
15 / 2 =
7 residuo
1
Apuntes de Informática
Edgar F. Flores Muñoz
La parte entera a base 2
La parte decimal a base 2
7 /2=
3 residuo
1
3 /2=
1 residuo
1
1 /2=
0 residuo
1
( 1000.25 )10 = ( 1111101000.01 )2
La parte entera a base 16
La parte decimal a base 16
1000 / 16 =
62 residuo
8
62 / 16 =
3 residuo
14 = E
3 / 16 =
0 residuo
3
0.25 x 16 =
4.0 entero
4
( 1000.25 )10 = ( 3E8.4 )16
La parte entera a base 8
La parte decimal a base 8
1000 / 8 =
125 residuo
0
125 / 8 =
15 residuo
5
15 / 8 =
1 residuo
7
1 /8=
0 residuo
1
0.25 x 8 =
2.0 entero
2
( 1000.25 )10 = ( 1750.2 )8
Resultado : ( 1000.25 )10 = ( 1111101000.01 )2 = ( 3E8.4 )16 = ( 1750.2 )8
Conversión de números de cualquier base (n) a base 10
La conversión de un número en cualquier base (n) a base 10 se hace con un solo método, que es de
hecho el mismo que usamos para identificar los múltiplos de un número en base 10, la diferencia será
que en lugar de usar 10 usaremos la base en la que se encuentra el número. De nuevo usaremos un
ejemplo para identificar el algoritmo de conversión.
Convertir 10011101.00101 de base 2 a base 10
1. Se identifican las posiciones de cada dígito dentro de la cifra, considerando que la primer posición a
la izquierda del punto decimal es la posición cero y que hacia la izquierda son posiciones positivas y
hacia la derecha son posiciones negativas.
2. Se multiplica cada dígito por la base elevada a la posición del dígito.
3. Se suman los resultados de cada multiplicación y ese es el equivalente del número en la base 10
Posición (P)
7
Dígito (D) (
1
P
6
5
0
7
4
0
6
3
1
5
2
1
4
1
1
3
0
0
2
-1
.
1
1
DxB
1x2
0x2
0x2
1x2
1x2
1x2
0x2
1x2
Resultado
128
0
0
16
8
4
0
1
0
-2
0
0x2
0
-3
0
-1
0x2
0
-4
1
-2
1x2
-5
0
-3
0.125
1
-4
)2
-5
0x2
0
Base (B)
1x2
SUMA
0.03125 156.15625
( 10011101.00101 )2=( 156.15625 )10
** Nota: Para realizar las operaciones de los exponentes o posiciones negativas, hay que considerar que
Apuntes de Informática
B−n=
1
Bn
ejemplo :
Edgar F. Flores Muñoz
2−5=
1 1
= =1÷32=0.03125
25 32
Ejemplos :
Convertir ( 3E8.4 )16 = (
)10
Posición (P)
2
1
0
-1
Base (B)
Dígito (D) (
3
E
8
4
)16
DxBP
Resultado
.
3x162 14x161 8x160
768
224
4x16-1
SUMA
0.25
1000.25
8
( 3E8.4 )16 = ( 1000.25 )10
Convertir ( 773.53 )8 = (
Posición (P)
2
1
0
Dígito (D) (
7
7
3
DxBP
Resultado
)10
-1
-2
5
3
7x82 7x81 3x80
5x8-1
3x8-2
448
0.625 0.046875 507.671875
56
.
3
Base (B)
)8
SUMA
( 773.53 )8 = ( 507.671875 )10
Ejercicios:
Realizar las siguientes conversiones entre las bases que se indican
1.
2.
3.
4.
5.
( 759.08 )10 = (
)12 = (
)16 = (
)5
( 759.08 )9 = (
)10 = (
)3 = (
)8
( 759.08 )12 = (
)10 = (
)2 = (
)16
( 759.08 )11 = (
)10 = (
)8 = (
)8
( 1532.671875 )9 = (
)10 = (
)2 = (
)8 = (
)16
Apuntes de Informática
Edgar F. Flores Muñoz
Conversiones entre la base 2 y las bases 4, 8 y 16.
La conversión entre la base 2 y las bases 4,8 y 16 puede realizarse de manera directa o utilizando tablas
gracias a que las bases 4, 8 y 16 son bases potencia de la base 2, es decir que:
22=4, 23=8 y 24=16
Lo que para fines de conversión significa que entre las bases 2 y 4 cada dos dígitos de la base 2, es
decir cada dos bits, son equivalentes a un dígito de la base 4, de manera similar, cada tres bits
representan un dígito de la base 8 y cada 4 bits representan un dígito de la base 16.
De lo anterior podemos generar las siguientes tablas de conversión.
Base 2 Base 4
Base 2 Base 8
Base 2 Base 16 Base 4
Base 3
Base
9
00
0
000
0
0000
0
00
00
0
01
1
001
1
0001
1
01
01
1
10
2
010
2
0010
2
02
02
2
11
3
011
3
0011
3
03
10
3
100
4
0100
4
10
11
4
101
5
0101
5
11
12
5
110
6
0110
6
12
20
6
111
7
0111
7
13
21
7
1000
8
20
22
8
1001
9
21
1010
A
22
1011
B
23
1100
C
30
1101
D
31
1110
E
32
1111
F
33
En las tablas anteriores se agregaron la conversión entre las bases 16 y 4 así como entre las bases 3 y 9,
ya que el concepto se aplica de la misma manera que entre las otras bases, 42=16 y 32=9.
La utilización de las tablas es la siguiente:
Convertir 111100101.101001 de la base 2 a las bases 4, 8 y 16.
Cuando la base de origen es menor a la base destino, se debe dividir la cifra en grupos de dígitos
tomando como referencia el punto decimal la cifra y la cantidad de dígitos del grupo debe corresponder
con la potencia a la que se debe elevar la base menor para obtener la mayor. Si la cantidad de dígitos no
corresponde a un múltiplo de la potencia, es decir, que falten dígitos para tener grupos completos, se
agregaran ceros para completar los grupos, después simplemente se sustituye cada grupo por el
correspondiente dígito usando las tablas. En este ejemplo la conversión queda de la siguiente forma, los
ceros que se tuvieron que agregar a la cifra original para tener grupos completos están sombreados.
Apuntes de Informática
Edgar F. Flores Muñoz
Base
0 1 1 1 1 0 0 1 0 1 . 1 0 1 0 0 1
2
1
4
3
2
1
1
.
2
2
1
Base
1 1 1 1 0 0 1 0 1 . 1 0 1 0 0 1
2
7
8
4
5
.
5
1
Base
2 0 0 0 1 1 1 1 0 0 1 0 1 . 1 0 1 0 0 1 0 0
1
16
E
5
.
A
4
Quedando entonces que :
( 111100101.101001 )2 = ( 13211.221 )4 = ( 745.51 )8 = ( 1E5.A4)16
Convertir C3F.9E de base 16 a las bases 2 y 4.
Cuando la base origen es mayor a la base destino, simplemente se sustituyen los dígitos de dicha base
usando sus equivalentes en la base destino, sin olvidar incluir todo los ceros y en el mismo orden de los
dígitos en la base original, una vez hecha la sustitución, pueden ser eliminados los ceros en los
extremos a la izquierda del punto decimal y los ceros en los extremos a la derecha del punto decimal,
para este ejemplo se sombrea el cero que sera eliminado.
Base
16
C
3
F
.
9
E
2 1100 0011 1111 . 1001 1110
Base
16
C
3
F
.
9
E
4
30
03
33
.
21
32
Quedando entonces que :
( C3F.9E )16 = ( 110000111111.1001111 )2 = ( 300333.2132 )4
Apuntes de Informática
Edgar F. Flores Muñoz
Operaciones aritméticas en base 2.
Las operaciones aritméticas, como la suma, resta, multiplicación y división en diferentes bases se
realizan de la misma forma que lo hacemos en base 10, lo que cambia por supuesto es el conjunto de
dígitos a nuestra disposición, a manera de ejemplo, veremos la forma de sumar y multiplicar usando la
base 2.
Para la suma la únicas consideraciones a hacer son las siguientes:
0+0=0, 1+0=1, 1+1=10
Fuera de esto, la suma es exactamente igual, veamos
1
1
1
1
1
1 0 1 1 1
+
1 1 1 1 1
1 1 0 1 1 0
Un ejemplo más complejo seria
1
0
1
1
1
1
1
1
1
0
1
0
1
1 1 1 0 1 1 0
1 1 0 0 1 1 1
1 1 1 1 0 0 1
+
1 1 1 1 1 1 1
1 1 1 0 1 0 1 0 1
La multiplicación solo requiere de saber dos tablas de multiplicar, la tabla del cero y la del uno
0x0=0
0x1=0
1x0=0
1x1=1
Ejemplos:
1
X
1
1
1
0
1
1
1
0
0
0
0
0
1
1
0
1
1
1
0
1
0
0
1
1
1
1
0
1
1 1 0 1 1
X
1
1
1
1
1+1
1 1 0 0 1
0
1
1
1 1 0 1 1
0
0
0 0 0 0
0
0
0
0 0 0
1 1
1
0
1 1
1 1 1
0
1
1
1 0 1 1
1
0
0 0 0 1 1
Apuntes de Informática
Edgar F. Flores Muñoz
Prefijos de cantidad.
Los prefijos de cantidad que mencionaremos han existido desde hace mucho tiempo, y tiene un valor
definido que es el que se encuentra en base 10, para aplicar los mismos prefijos a cantidades en la
informática, se les ha hecho un ajuste a los valores considerando que las computadoras trabajan en un
sistema binario o de base 2, ya que el valor de cada prefijo esta dado por la base elevada a un
exponente, se busco el exponente que acercara más el valor en base 2 al valor en base 10, dicho lo
anterior tenemos los siguientes prefijos y valores:
Nombre
Abreviación
Valor para base 2
Valor para base 10
10
Kilo
K
2 = 1,024
103 = 1,000
Mega
M
220 = 1,048,576
106 = 1,000,000
Giga
G
230 = 1,073,741,824
109 = 1,000,000,000
Tera
T
240 = 1,099,511,627,776
1012 = 1,000,000,000,000
Peta
P
250 = 1,125,899,906,842,624
1015 = 1,000,000,000,000,000
Exa
E
260 = 1,152,921,504,606,846,976
1018 = 1,000,000,000,000,000,000
70
Zetta
Z
2 = 1,180,591,620,717,411,303,424
1021 = 1,000,000,000,000,000,000,000
Yotta
Y
280 = 1,208,925,819,614,629,174,706,176
1024 = 1,000,000,000,000,000,000,000,000
Entonces, si hablamos de un Mbyte o mega byte estaremos hablando aproximadamente de un millón de
bytes o exactamente de 1,048,576 bytes.
8.2 Códigos de Información
Un código de información desde el punto de vista informático es un tabla de relación entre símbolos,
caracteres, y un equivalente número en binario.
Tres juegos de códigos comunes son:
ASCII
EBCDIC
Unicode
(para las PCs y UNIX y DOS computadoras)
(para IBM System 390 computadoras de gran potencia)
(para Windows NT y explorador de Web reciente)
El código ASCII (American Standard Code for Information Interchange) utiliza 7 bits por carácter,
permitiendo 128 diferentes caracteres, lo que es suficiente para el alfabeto en letras mayúsculas y
minúsculas y los símbolos de una máquina de escribir corriente además de algunas combinaciones
reservadas para su uso interno. Un código ASCII extendido usa 8 bits por carácter lo que añade otros
128 caracteres posibles. Este juego de códigos más amplio permite que se agreguen los símbolos de
lenguajes diferentes al inglés y varios símbolos gráficos.
Apuntes de Informática
Edgar F. Flores Muñoz
Se usan códigos ASCII en UNIX y en las computadoras de base DOX para representar texto simple. El
Sistema de las computadoras IBM 390 usa su propio juego de códigos, llamado EBCDIC (Extended
Binary Coded Decimal Interchange Code).
Una nueva norma, llamada Unicode (http://www.unicode.org/) (Unicode Worldwide Code Standard Código Norma Universal Unicode), se usa en las computadoras bajo Windows NT. IE4 y Netscape 4
entienden al Unicode y su uso se está extendiendo.
El Unicode usa 16 bits por carácter, por lo que para los mismos caracteres insume el doble de espacio
que con el código ASCII. Pero Unicode puede manejar muchos más caracteres. La meta de Unicode es
representar cada elemento usado en la escritura de cualquier idioma del planeta. Bastante trabajo.
El Unicode versión 3.0 contiene 49,194 caracteres, en lugar de los escasos pocos centenares de
caracteres para ASCII y EBCDIC , de los utilizados en los lenguajes más importantes del mundo.
Además de letras y números, el Unicode incluye puntuación, símbolos matemáticos y técnicos, formas
geométricas, caracteres gráficos y modelos del Braille. Unicode contiene el código ASCII de norma
como un subconjunto.
Apuntes de Informática
Edgar F. Flores Muñoz
Tabla ASCII
Tabla ASCII extendida
Paridad
Con todos éstos 0 y 1, sería fácil que la computadora cometiera un error. La paridad es una manera
ingeniosa de verificar errores que pudieran ocurrir durante el procesamiento.
En un sistema de paridad par un bit extra (haciendo que haya 9 bits en total) es asignado para que
figure como 0 o como 1, haciendo que el número de bits resulte par. De forma que en nuestro ejemplo
Apuntes de Informática
Edgar F. Flores Muñoz
anterior en el número 10101100 hay 4 bits activos o sea cuatro 1 .Por eso, el noveno bit que es el bit de
paridad tendrá que ser 0, ya que el número de bits activos o 1, es de 4 , o sea par.
En un sistema de paridad impar el número de bits activos o sea 1, deberá resultar impar.
Si el número de bits 1 es incorrecto, ha ocurrido un error. Usted no sabrá cuál dígito o dígitos son los
equivocados, pero al menos sabrá que ha sucedido un error.
Si el número de bits está equivocado, ha ocurrido un error. Usted no sabrá qué dígito o dígitos están
equivocados, pero por lo menos la computadora sabrá que ocurrió un error.
Los circuitos integrados de memoria que almacenan sus datos pueden ser con paridad o sin paridad. Si
se mezclan los dos tipos de circuitos integrados, pueden suceder fallas extrañas, difíciles de encontrar.
Descargar