FUNDAMENTOS DE INFORMÁTICA ÍNDICE 1 Historia de la informática 3

Anuncio
FUNDAMENTOS DE INFORMÁTICA
ÍNDICE
1 Historia de la informática 3
1.1 Antecedentes. La máquina sumadora de pascal. La calculadora de Leibniz. 3
1.2 Las diversas generaciones de ordenadores. 4
1.3 Internet. 4
2 Estructura general de un ordenador 7
2.1 La Unidad Central de Proceso. 7
2.2 La memoria. 7
2.3 Los periféricos. 8
2.4 Dispositivos de almacenamiento. 9
2.5 Funcionamiento de la unidad de control. 10
3 El software 11
3.1 Lenguajes de bajo nivel. 11
3.2 Lenguajes de alto nivel. 11
3.3 Compiladores e intérpretes. 11
4 Sistemas operativos 12
4.1 Funciones de un sistema operativo. 12
1
4.2 Evolución de los sistemas operativos. 12
4.3 Arquitectura de un sistema operativo. 14
5 Codificación de la información 15
5.1 Sistemas de numeración. El sistema binario. El sistema hexadecimal. 15
5.2 Representación de los números enteros. 16
5.3 Representación de los números reales. El estándar IEEE 764. 17
5.4 Medida de la memoria de un ordenador. 18
5.5 Capacidad de direccionamiento. 20
5.6 Códigos de representación alfanumérica. El código ASCII. UNICODE. 20
6 Ejercicios de codificación de la información y capacidad de direccionamiento 24
6.1 Enunciados. 24
6.2 Soluciones. 25
7 Referencias a páginas web 29
• historia de la informática
• Antecedentes. La máquina sumadora de pascal. La calculadora de Leibniz.
Antecedentes.
Aunque tal y como hoy en día conocemos la informática se puede considerar como una ciencia
relativamente moderna, sus primeros orígenes tuvieron lugar como respuesta a una de las más viejas
aspiraciones del hombre: Simplificar sus tareas. Como todos los avances importantes de la
humanidad, sus principios (aunque modestos) se remontan a tiempos pretéritos. La necesidad del
hombre de disponer de algún medio que le permitiera saber el balance exacto de las posesiones le hizo
idear un sistema. Así, hace ya 3000 años, en la civilización china se utilizaba un instrumento llamado
ábaco como herramienta indispensable para efectuar todas aquellas transacciones comerciales en las
que era necesario realizar operaciones rápidas y eficaces.
El ábaco no era otra cosa que un rudimentario marco o tablilla de madera dotada de una serie de
varillas verticales que dividían la tabla en varias columnas y en las que iban engarzadas unas bolas o
anillos a modo de cuentas. La columna situada más a la derecha representaba a las unidades, la
anterior a las decenas, y así sucesivamente. En la parte inferior de cada columna existían cinco
cuentas elementales y, situadas en la parte superior, otras dos de distinto color que representaban
cinco unidades
La máquina sumadora de Pascal.
El primero en diseñar una máquina de cálculo mecánica fue Leonardo da Vinci (1452−1519), pero no
pudo construirse debido a evidentes impedimentos técnicos.
2
La primera máquina de cálculo mecánico la construyó, en 1623, el astrónomo Wilhelm Schickard.
Esta máquina constaba de dos conjuntos de ruedas diferentes: unas servían de acumuladores y otras
de memoria. Este invento no se conoció hasta 1957, por lo que se creyó que la primera máquina de
este tipo la construyó Blaise Pascal en 1642.
Básicamente era una sumadora, las restas se hacían por suma de complementos, compuesta por un
conjunto de ruedas registradoras de datos y un conjunto de ruedas de resultados. Esta máquina se
terminó en 1645 y fue precedente para la «sumadora−restadora» de Samuel−Morland (construida en
1666).
Cada una de las ruedas marcada en su borde con las cifras 1 a 10. Cuando la rueda de la derecha, que
representaba las unidades, daba una vuelta completa, engranaba con la rueda situada a su izquierda, y
que representaba las decenas, y se adelantaba una muesca. Si se introducían los números correctos no
había posibilidad de error. Pascal patentó la versión definitiva en 1649, pero constituyo un fracaso
comercial, era demasiado cara.
La calculadora de Leibniz.
Leibniz empezó a interesarse por el cálculo, como muestran sus palabras. "Es despreciable que
excelentes hombres pierdan horas trabajando como esclavos en las tareas de cálculo, las cuales
podrían ser relegadas con toda seguridad a cualquier otra persona si las máquinas fueran usadas".
Diseñó una máquina capaz de realizar cálculos matemáticos siendo unas de las primeras de la historia.
En un principio durante uno de sus viajes a Londres mostró a la Real Sociedad de Matemáticas su
calculadora incompleta. Algunos miembros de dicha Sociedad mostraron sus dudas sobre su
calculadora. Esto produjo que Leibniz se esforzará más prometiendo a la Real Sociedad que
terminaría la calculadora. Algo que consiguió y con ello el reconocimiento de la Real Sociedad.
Leibniz desarrolló varios aspectos de la lógica simbólica como la formulación de las propiedades
principales de la suma lógica y la multiplicación lógica, entre otras muchas.
Su contribución más notable a las matemáticas fue la creación, junto con Newton, del cálculo
infinitesimal.
Dentro de la filosofía, al igual que el filósofo y teólogo español Ramón Llull, Leibniz tenía la idea de
que era posible que las máquinas generaran ideas automáticamente, es decir por si solas. Estaba
convencido de que el pensamiento era fruto de la realización de un cálculo.
Desde 1676 hasta que murió trabajó como bibliotecario y consejero privado en la corte de Hannover
(Alemania).
• Las diversas generaciones de ordenadores.
EL diseño, la forma de funcionamiento y los componentes de los ordenadores no se han mantenido
inalterables, sino que han ido evolucionando con el tiempo. Así los ordenadores han incorporado a su
estructura diversas mejoras técnicas, especialmente los relacionados con la microelectrónica. De esta
manera se pueden distinguir diversas generaciones de ordenadores, cada una de las cuales supuso un
importante avance técnico con respecto a la anterior.
La segunda generación de ordenadores se inicio gracias a la incorporación de transistores a los
aparatos. Estos componentes electrónicos sustituyeron a las válvulas de vació tanto por sus menores
dimensiones como por su mayor rapidez, lo que favoreció el que los ordenadores experimentasen una
notable reducción de tamaño. Otro avance importante fue la aparición de lenguaje de programación
3
primitivo lo que contribuyó a mejorar aun más la flexibilidad de estos aparatos.
La tercera generación de ordenadores empezó gracias al desarrollo de los circuitos integrados. El
circuito integrado o microchip permitió incorporar un gran número de transistores miniaturizados, lo
que dio lugar a un gran aumento de la velocidad de trabajo así como a una importantísima reducción
del tamaño. El aumento de velocidad hizo posible que los ordenadores fuesen capaces de hacer correr
diversos programas de forma simultánea.
• Internet.
Resulta evidente para todos nosotros la tremenda revolución que ha supuesto en nuestra sociedad la
aparición del fenómeno Internet. Gracias a él nos encontramos en lo que muchos expertos han dado
en llamar "sociedad de la información". Pero no sólo en cuanto a disponibilidad de la información se
han producido los cambios, si no en la manera de pagar por ella. Tradicionalmente el soporte en el
que la información se presentaba participaba en el precio, sin embargo ahora el coste del medio es
prácticamente despreciable en comparación.
Actualmente los costes de acceso a un determinado activo de información a través de Internet pueden
fijarse alrededor de un 5−20% del coste en formato tradicional. Disponibilidad y costes fueron los dos
catalizadores de la revolución de Internet.
Por supuesto que en todas las revoluciones tenemos perjudicados y beneficiados y de resultas a ello
hemos visto caídas y auges de grandes corporaciones y proyectos. Masivas ventas y beneficios que se
convirtieron en grandes pérdidas, y viceversa. En definitiva juegos de negocio para ver quien
aguantaba los vientos del cambio.
En cualquier revolución sea social o tecnológica, el nivel de caos dentro de la organización aumenta
durante un tiempo; los gobiernos parecen inestables, los procesos incorrectos, se cambian las bases y
las tesis que sostenían el sistema anterior y, en general, durante un tiempo todos parece que "estamos
peor que antes".
Sin embargo, parece que los tiempos de cambio radical han concluido y ahora podemos esperar una
más sosegada evolución. Incluso en muchos casos esta evolución paulatina se está capitalizando en
nuestra vida sin darnos cuenta de ello, ya que se han creado unas nuevas bases de trabajo, nuevas
"leyes" que hacen que nuevos servicios y costumbres se estén desarrollando bajo nuestros pies.
Claros ejemplos los tenemos en la banca electrónica; donde hace un par de años resultaba exótico
tener un sistema de gestión bancaria a través de Web, ahora resulta tan imprescindible que ninguno de
los grandes del sector comete el error de no comunicar que dispone de estos servicios. Las reservas de
entradas o los callejeros on−line, no son más que otros ejemplos de cómo Internet se está insertando
en nuestras vidas.
Como ejemplo basta analizar cómo el correo electrónico forma parte de nuestros procesos de negocio
a un nivel tal, que ya no resulta competitivo disponer de él, es más, no tenerlo resulta de una
desventaja. Nadie en estos momentos piensa que por darle un correo electrónico a un cliente, este
esgrimiendo una clara ventaja ante sus competidores. Lo normal es que el cliente ya dé por sentado
que nosotros disponemos de él, y nos muestre su descontento si no es así.
Siguiendo este ejemplo, no es descabellado suponer que en breve la banca no promocionará sus
sistemas de consulta por Internet, ya que el cliente habitual, como en el antiguo servicio militar,
"supondrá el valor" de la oferta que la entidad le hará para captarle, básicamente será como el que el
banco tenga cajeros automáticos, "todos lo tienen" y "si no tiene, no meto ahí mi dinero"
4
Esta capilaridad en el mundo de los negocios no hará sino integrar paulatinamente estos sistemas en la
gestión de los mismos. Ya es posible la comunicación telemática entre proveedores−clientes o
empresas−empleados. En un futuro cercano este tipo de relaciones se convertirán en algo tan habitual
como ahora resulta tener una máquina de fax o una fotocopiadora.
Nuestra cadena de suministro va a demandar este tipo de soluciones, los proveedores querrán
mandarnos las ofertas vía telemática y recibir nuestro pedidos de igual manera, nuestros clientes
querrán consultar en tiempo real el estado de sus encargos, nuestros empleados necesitarán de
sistemas globales y ágiles que les permitan dedicarse a crear valor en nuestras compañías de hecho en
algunas ya ocurre esto desde hace tiempo, y curiosamente son las que están capeando el temporal en
estos malos tiempos.
Por todo ello, necesitamos mantener los ojos abiertos ya que las oportunidades que Internet nos va a
ofrecer no se materializarán sólo para los mas arriesgados, mas bien, estarán disponibles para todos y
sólo serán los primeros los que gocen de ventajas durante un tiempo, los llamados "Web Services" o
los sistemas de consulta en tiempo real no son mas que claros ejemplos de estas oportunidades.
En definitiva, Internet no será una ventaja para siempre, mas bien en breve será algo de lo que no
podremos prescindir.
Citando a Darwin"si más individuos nacen que los que pueden sobrevivir, un grano de arena en la
balanza bastará para determinar qué individuo vivirá y cuál morirá, qué variedad o especie aumentará
en números y cuál decrecerá o finalmente llegará a extinguirse". Está clara la analogía con el mundo
empresarial.
La sociedad que vivimos cada vez se parece más a esta balanza, estemos preparados pues para aferrar
ese grano de arena que dentro de unos años se nos presentará. Aunque, por supuesto, si conseguimos
ahora la piedra antes de que el tiempo la convierta en granos de arena, el dial de la balanza estará de
nuestro lado con un ángulo mucho mayor y durante un periodo más dilatado que el que nuestros
competidores quisieran.
♦ estructura general de un ordenador
♦ La Unidad Central de Proceso.
Funciones que realiza:
La Unidad central de proceso o CPU, se puede definir como un circuito microscópico que
interpreta y ejecuta instrucciones. La CPU se ocupa del control y el proceso de datos en los
ordenadores. Habitualmente, la CPU es un microprocesador fabricado en un chip, un único
trozo de silicio que contiene millones de componentes electrónicos. El microprocesador de la
CPU está formado por una unidad aritmético lógica que realiza cálculos y comparaciones, y
toma decisiones lógicas (determina si una afirmación es cierta o falsa mediante las reglas del
álgebra de Boole); por una serie de registros donde se almacena información temporalmente,
y por una unidad de control que interpreta y ejecuta las instrucciones. Para aceptar órdenes
del usuario, acceder a los datos y presentar los resultados, la CPU se comunica a través de un
conjunto de circuitos o conexiones llamado bus. El bus conecta la CPU a los dispositivos de
almacenamiento (por ejemplo, un disco duro), los dispositivos de entrada (por ejemplo, un
teclado o un ratón) y los dispositivos de salida (por ejemplo, un monitor o una impresora).
Elementos que la componen:
◊ Unidad de control: controla el funcionamiento de la CPU y por tanto de el
5
computador.
◊ Unidad aritmético−lógica (ALU): encargada de llevar a cabo las funciones de
procesamiento de datos del computador.
◊ Registros: proporcionan almacenamiento interno a la CPU.
◊ Interconexiones CPU: Son mecanismos que proporcionan comunicación entre la
unidad de control, la ALU y los registros.
Tipos:
Básicamente nos encontramos con dos tipos de diseño de los microprocesadores: RISC
(Reduced−Instruction−Set Computing) y CISC (complex−instruction−set computing). Los
microprocesadores RISC se basan en la idea de que la mayoría de las instrucciones para
realizar procesos en el computador son relativamente simples por lo que se minimiza el
número de instrucciones y su complejidad a la hora de diseñar la CPU. Algunos ejemplos de
arquitectura RISC son el SPARC de Sun Microsystem's, el microprocesador Alpha diseñado
por la antigua Digital, hoy absorbida por Compaq y los Motorola 88000 y PowerPC. Estos
procesadores se suelen emplear en aplicaciones industriales y profesionales por su gran
rendimiento y fiabilidad.
Los microprocesadores CISC, al contrario, tienen una gran cantidad de instrucciones y por
tanto son muy rápidos procesando código complejo. Las CPU´s CISC más extendidas son las
de la familia 80x86 de Intel cuyo último micro es el Pentium II. Últimamente han aparecido
otras compañías como Cirix y AMD que fabrican procesadores con el juego de instrucciones
80x86 y a un precio sensiblemente inferior al de los microprocesadores de Intel. Además,
tanto Intel con MMX como AMD con su especificación 3D−Now! están apostando por
extender el conjunto de instrucciones de la CPU para que trabaje más eficientemente con
tratamiento de imágenes y aplicaciones en 3 dimensiones.
♦ La memoria.
Componente del hardware en el que se almacena la información procesada por el ordenador.
La memoria puede estar constituida físicamente por: un conjunto de circuitos electrónicos, en
cuyo caso estaremos haciendo referencia a la memoria interna o dispositivos que se basan en
alguna propiedad física estable del medio para guardar la información: propiedades ópticas,
magnéticas o dieléctricas. En este segundo caso se hace referencia a la memoria externa.
♦ Memoria interna
La información que se procesa en el ordenador debe permanecer en alguna parte para poder
hacer uso de ella en cualquier momento. La memoria interna del ordenador se clasifica en:
◊ RAM: Random Access Memory (memoria de acceso aleatorio). Es volátil. Permite
leer y escribir y se pierde al apagar el ordenador, por lo que debe de guardarse en otro
tipo de soporte antes de apagar el ordenador.
La RAM puede compararse con los buzones de un portal. Cada una de estas celdas
corresponde a un bit. Cada celda tiene un indicativo, que es la dirección de acceso. Por eso se
llama memoria de acceso aleatorio. Se puede acceder a una celda en concreto sin pasar por el
resto.
◊ ROM: Read Only Memory (memoria sólo de lectura). Es permanente, no puede ser
alterada y se utiliza para guardar algunos programas fundamentales para el ordenador.
Está asociada a la BIOS.
◊ Memoria caché
6
Es una memoria especial de acceso muy rápido. Su función es la de almacenar los
datos y el código utilizados en las últimas operaciones del procesador. Habitualmente
el ordenador utiliza repetidas veces la misma operación.
◊ Memoria o almacenamiento externo
También denominado almacenamiento masivo o memoria masa. Son discos
magnéticos u ópticos que pueden ser flexibles o rígidos. Los discos flexibles o
floppys son discos extraíbles y de poca capacidad, los discos rígidos son más rápidos,
seguros y de mayor capacidad.
Métodos de almacenamiento:
⋅ Magnéticos: floppy, HD y cintas. Se basan en las propiedades magnéticas de
los materiales ferromagnéticos (como las cintas de música o vídeo).
⋅ Ópticos: CD Rom y WORM. Se basa en la alteración de una superficie
mediante perforaciones con láser. No se pueden reescribir (salvo los CD−R o
CD−RW).
⋅ Magneto ópticos: Se basan en las propiedades de magnetización de
materiales en caliente y de la reflexión de la luz polarizada en materiales
magnetizados.
⋅ Los periféricos.
Cada periférico suele estar formado por dos partes diferenciadas en cuanto a
su misión y funcionamiento: una parte mecánica y otra electrónica.
La parte mecánica está formada básicamente por dispositivos
electromecánicos (conmutadores manuales, motores, electroimanes, etc.)
controlados por los elementos electrónicos. Esta parte determina la velocidad
de funcionamiento.
La parte electrónica gestiona el funcionamiento de los procesos.
Desde el ordenador se actúa sobre los periféricos a iniciativa de las
instrucciones de los programas. Para poder utilizar eficazmente un ordenador,
su sistema operativo contiene rutinas específicas para la gestión de los
periféricos. Sin estas rutinas sería extremadamente complejo utilizar un
periférico desde un lenguaje de alto nivel.
Algunos periféricos tienen la posibilidad de hacer autónomamente
determinadas operaciones. Estas operaciones pueden ser desde auto
comprobar su funcionamiento físico, hasta funciones más complejas como
rebobinar una cinta magnética, o dibujar en un registrador gráfico la
información contenida en una cinta magnética.
Los periféricos se dividen en tres categorías, ya conocidas:
• Unidades de entrada.
• Unidades de salida.
• Unidades de memoria masiva auxiliar.
No necesariamente las distintas unidades están físicamente individualizadas
en módulos independientes, pudiendo, por ejemplo, estar montadas una
7
unidad de entrada y una unidad de salida conjuntamente. Así un terminal
interactivo suele estar constituido por un teclado (unidad de entrada)
acoplado solidariamente a una pantalla (unidad de salida). A veces se dice
que estas unidades son de tipo mixto. Incluso hay dispositivos de entrada que
únicamente tienen sentido actuando conjuntamente con un dispositivo de
salida (Ejemplo: lápiz óptico).
Las unidades de memoria masiva pueden considerarse como unidades de E/S
mixtas.
Así una unidad de cinta magnética, cuando lee información de una cinta,
actúa como dispositivo de entrada; cuando escribe o graba información
procedente del ordenador central, actúa como unidad de salida.
⋅ Dispositivos de almacenamiento.
Los dispositivos de almacenamiento digital son el sustituto de los estantes
que encontramos en los largos pasillos de una biblioteca. Ahora, en lugar de
almacenar libros y otros objetos, almacenamos los archivos que contienen los
documentos que forman la colección de la biblioteca digital.
El almacenamiento digital se utiliza para guardar datos y después procesarlos
y usarlos como programas o información de cualquier tipo. Hay dos formas
de guardar la información para después poder leerla, estos son los discos o
unidades de almacenamiento magnético que guardan la información en una
superficie de metal dirigido magnéticamente y los discos o unidades de
almacenamiento óptico que surgen, algunas décadas después, con el
descubrimiento del láser.
La tendencia general de todos los dispositivos de almacenamiento masivo de
información se dirige, por un lado, al incremento continuo de la capacidad y,
por otro, a obtener dispositivos más rápidos, más económicos, de menor
tamaño y más fiables que los que están disponibles en la actualidad. De
hecho, todo dispositivo que pretenda llegar a convertirse en un estándar,
deberá tener un precio razonable, rapidez, versatilidad y una gran capacidad
de almacenamiento.
El espacio de almacenamiento adecuado para nuestro ambiente de
producción puede proporcionarlo discos duros de alta capacidad, un disco
instalado en el servidor de una red, medios ópticos, cintas, dispositivos de
bancos de memoria especial, o su combinación.
El tipo de formato y el dispositivo de almacenamiento son de fundamental
consideración; la tecnología cada vez es más bondadosa con los medios de
almacenamiento y es posible mantener más información en los medios
electrónicos a más bajo precio, pero así mismo cada vez existe más
información por almacenar. Para la decisión de nuestros dispositivos de
almacenamiento se debe considerar el volumen de información que se tienen
de inicio y sus proyecciones de crecimiento a corto, mediano y largo plazo.
También se debe considerar el número de accesos que se harán a los
documentos y la rapidez con que éstos deben ser recuperados.
8
⋅ Funcionamiento de la unidad de control.
La unidad de control es la parte del CPU que se encarga de que las cosas
sucedan, ya que emite señales de control externas al CPU para producir el
intercambio de datos con la memoria y los módulos de E/S. También emite
señales de control internas para transferir datos entre registros, hacer que la
ALU ejecute una función y otras operaciones internas. La entrada a la unidad
de control está compuesta por el registro de instrucción, los indicadores, y
señales de control. La responsabilidad principal de la unidad de control es
hacer que se produzca una secuencia de operaciones elementales, llamadas
micro−operaciones, durante el desarrollo de un ciclo de instrucción.
• el software
• Lenguajes de bajo nivel.
Estos lenguajes van orientados a la máquina (0,1). Se tuvieron que
inventar unos nuevos lenguajes porque el antiguo era incómodo.
Estos nuevos lenguajes se llamaron ensambladores; algunos
ejemplos son: MOV A B − ADD AC − JMP D.
Como los ceros y los unos eran, y lo siguen siendo, muy difíciles
para el hombre y el ensamblador muy difícil para la máquina, se
inventó un programa que tradujera el lenguaje ensamblador a los
ceros y los unos. Así sería más fácil.
• Lenguajes de alto nivel.
Estos lenguajes van orientados al problema. Hay varios:
♦ Fortran: Fórmula Translator
♦ Cobol: Common Business Oriental Lenguage
♦ Pascal: programación estructural
♦ Basic
♦ Ada: da la respuesta inmediata
♦ Java: recoge muchas técnicas anteriores y nuevas orientadas
a objetos
Todos estos lenguajes no dependen de la máquina. Son más fáciles
de comprender que los lenguajes de bajo nivel. No hace falta conocer
los detalles físicos de la máquina.
• Compiladores e intérpretes.
Los compiladores y los intérpretes son sistemas que traducen, cada
uno a su manera, de un lenguaje a otro:
♦ Compiladores: traducen todo e programa a código objeto.
código fuente compilador código objeto
♦ Intérpretes: traducen y ejecutan el programa fuente
instrucción a instrucción.
Instr. 1
9
Instr. 2 intérprete código objeto
Instr. 3
:
♦ Diferencias y semejanzas entre los compiladores y los
intérpretes:
♦ Un compilador es mucho más complejo.
♦ El intérprete ocupa menos espacio y es bastante más sencillo.
♦ Con un intérprete se necesita tener el programa fuente y el
intérprete en memoria.
♦ El programa compilado no necesita el programa fuente ni el
compilador.
♦ Debe haber un traductor para cada máquina.
♦ sistemas operativos
El sistema operativo controla los recursos del ordenador y a un
administrador de dispositivos. Es lo que hace, aunque nosotros no
pensemos el por qué, que al apretar la p en el teclado te salga la
misma letra en la pantalla.
• Funciones de un sistema operativo.
Tiene varias funciones:
♦ Ejecución de programas: primero carga el programa en la
memoria y luego lo ejecuta. El DOS es un sistema
mono−tarea, solo se puede ejecutar un programa; mientras
que en el LINUX se pueden ejecutar varios a la vez.
♦ Gestión de la entrada y salida y otros recursos hardware:
para poder realizar esta función el ordenador tiene unos
drivers.
♦ Gestión de las comunicaciones entre procesos: los propios
programas se comunican entre sí, se mandan informaciones.
Por ejemplo, cuando imprimes algo en Word sale por el
driver de la impresora.
♦ Gestión del sistema de archivos: los archivos están
ordenados en forma de árbol genealógico, el sistema de
archivos lo guarda todo ordenadamente en carpetas o
directorios.
♦ Detección de errores: se suelen producir por estar en mal
estado; la impresora desenchufada,
♦ Asignación de recursos: dan a los programas la memoria
que necesite cada uno.
♦ Protección y seguridad: con esta función autorizas a un
programa para que pueda hacer algunas cosas, pero otras que
no te interesen que lo hagan los demás, no. Como por
ejemplo en un banco.
♦ Registro: tiene que tener una contabilidad y un registro de
todas las operaciones que ocurren, y también el tipo de
operaciones que se realizan con este sistema.
♦ Gestión de usuarios: gestiona los usuarios mediante grupos.
10
♦ Gestión de la memoria virtual: se reserva una parte del
disco duro que sabe trabajar con él como si fuera memoria
real.
♦ Evolución de los sistemas operativos.
Desde los orígenes de los ordenadores hasta ahora ha habido
una evolución bastante notable:
♦ Primera generación:
Abarca desde el 1945 hasta el 1955.
◊ Válvulas de vacío
◊ Código máquina
◊ En 1950 tarjetas perforadas
◊ Segunda generación:
Abarca desde 1955 hasta 1965.
⋅ La tecnología eran los transistores
⋅ Los programas se ejecutan en batch (en
serie).
⋅ Tercera generación:
Desde 1965 hasta 1980.
• Circuitos integrados
• IBM 360
• Sistema operativo
• Multiprogramación: para optimizar
el uso del procesador en operaciones
de entrada y salida se divide la
memoria en varios trabajos y el
tiempo de la CPU se reparte entre
estos trabajos.
• Tiempo compartido: ay varios
usuarios, cada uno tiene un terminal
y la CPU la que hace es que atiende
sucesivamente a cada uno de ellos.
La CPU le dedicaba un espacio corto de
tiempo a cada terminal, pero para que no se
mezclaran informaciones una serie de
laboratorios inventó MULTICS
(Multiplexed Information and Computing
Service).
Ken Thomson inventó UNICS, que era un
sistema operativo monousuario. Más tarde le
cambiaron el nombre a UNIX. Luego, se ha
inventado LINUX, un sistema operativo
abierto en el que cada usuario puede hacer lo
que le convenga: modificar programas,
11
⋅ Cuarta generación:
Los años 80.
• Circuitos integrados de gran escala
de integración. LSI
• Ordenadores personales
Aparece un nuevo sistema operativo llamado
MS−DOS de Microsoft. IBM PC. PC−DOS.
Motorola 68000−UNIX.
También aparecen:
• Sistemas en red: se comunican entre
ellos. Debe proporcionar acceso de
unos a otros, pero debe también,
controlar el acceso. Es un sistema de
login password.
• Sistema distribuido: un mismo
programa se puede ejecutar en
varios procesadores al mismo
tiempo.
Para evitar que cuando un ordenador se
estropee y esté ejecutando algo importante y
general en ese mismo instante, esto deje de
ejecutarse, hay varios ordenadores que hacen
lo mismo.
⋅ Proyecto de quinta generación:
Lo realizaron los japoneses.
Intentaron hacer programa de inteligencia
artificial, que todavía se sigue intentando.
Dos de las partes más importantes son el
reconocimiento de la voz y la comprensión
del lenguaje natural.
Una de las mayores revoluciones de la
historia es la aparición de internet.
⋅ Arquitectura de un sistema operativo.
Los elementos de un sistema operativo son:
⋅ Núcleo del sistema:
• Gestión de interrupciones: locación
de interrupciones y saber reaccionar,
lo que tenga que hacer.
• Dispatcher: se preocupa de la
gestión a bajo nivel de la CPU, la
coordinación del cambio de
12
actividad entre procesos.
• Representación de procesos: para
poder ejecutar un programa tiene
que guardarlo en la memoria. Se
pueden producir tres situaciones:
está en ejecución, sea ejecutable o
no sea ejecutable.
• Repertorio de instrucciones
privilegiadas: hay operaciones que
el usuario no puede hacer, solo el
supervisor. Como contraseñas,
• Implementación entre las
llamadas al sistema:
Piden servicios al sistema operativo.
• Procesador de comandos:
Tiene que permitir el diálogo cono
usuarios.
En el DOS el fichero que lo permite
se llama comando.com y en el
UNIX se llama Shell.
• Planificador de tareas:
Hay dos tipos, el sistema operativo
tiene que decir cómo ejecuta los
programas: en batch (un programa
detrás de otro, del más importante al
menos), o en tiempo compartido,
time−sharing (se sitúa el proceso en
la colección de programas de
ejecución).
• Gestión del sistema de ficheros:
Tiene la función de organizar el
sistema de directorios. Asigna y
gestiona el espacio libre ocupado en
el disco duro. Tiene que permitir la
manipulación entre ficheros y/o
directorios y establecer una
protección de los ficheros a los no
autorizados.
• Gestión de recursos:
Lleva la coordinación de ge la
asignación de recursos de sistema (la
memoria, los periféricos,). Tiene que
13
establecer medidas de protección y
seguridad, y para ello tiene que tener
un manejador de dispositivos
(drivers).
♦ codificación de la
información
♦ Sistemas de numeración.
El sistema binario. El
sistema hexadecimal.
Hay varios sistemas de
numeración:
◊ Sistemas
posicionales: 1335!
1 " 103 + 3 " 102 +
3 " 10 + 5
0,535! 5 " 10−1 + 3 " 10−2
+ 5 " 10−3
◊ Sistemas
acumulativos:
CXXIII ! 23
◊ Sistemas de base 6:
(0, 1, 2, 3, 4, 5)
(431)6= 4 " 62 + 3" 6 + 1 =
(163)10
◊ Sistemas en base
12: (0, 1, 2, 3, 4, 5,
6, 7, 8, 9, A, B)
(5A1)12 = 5 "122+ 10 " 12
+1
◊ Sistemas en base 8:
octal
◊ Sistemas en base
10: decimal
◊ Sistemas en base
60: sexagesimal
(segundos,
minutos,)
Hay sistemas en base n, es
decir, de cualquier número.
Los más utilizados son el
sistema binario, el decimal y
el hexadecimal.
♦ El sistema binario.
Este sistema combina solo
14
ceros y unos; de esta forma
va construyendo todos los
números.
BINARIO
0
1
10
11
100
101
110
111
1000
DECIMAL
1
2
3
4
5
6
7
8
9
Para representar los
números decimal se hace lo
siguiente:
Ejemplo ! 296
Es también posicional, con
base 2 (0 y 1) bi−estable. Es
la forma más simple de
contar (utiliza la base 2). El
sistema decimal utiliza la
base 10 y el hexadecimal
utiliza la base 16, etc.
El Bit es la unidad principal
(BInari digiT)= dígito
binario (1 o 2).
◊ Un dígito, dos
combinaciones: 0 1
◊ Dos dígitos, cuatro
combinaciones: 00
01 10 11
◊ Tres dígitos, ocho
combinaciones: 000
001 010 100 101
110 111 011
Y así sucesivamente. La
fórmula es: n dígitos, 2n
combinaciones posibles.
Los procesadores más
sencillos son de 8 bits, lo
que significa 8 dígitos. Para
transformar un número
15
binario 10011010(2) al
sistema decimal se debe
hacer lo siguiente:
10101101
76543210
Se numeran los dígitos de
derecha a izquierda
empezando por cero.
Se multiplica el dígito ( 0 ó
1) por 2 elevado al número
de posición y se suma el
resultado obteniendo así un
número decimal.
10101101(2) = 1 " 27 + 0 "
26 + 1 " 25 + 0 " 24 + 1 " 23
+ 1 " 22 + 0 " 21 + 1 " 20=
= 128 +0 +32 +0 +8 +4 +0
+1= 173
Para pasar de un número
decimal a uno binario se
debe dividir sucesivamente
entre dos. El resultado se
obtiene por el cociente final
y los restos que van
quedando en las sucesivas
divisiones de derecha a
izquierda.
♦ Representación de los
números enteros.
El complemento a 2
Este sistema sirve para la
representación de los
números enteros (positivos y
negativos).
Concepto del complemento
a2
El complemento a 2 de un
número X referido a una
palabra de n bits se obtiene
de las siguientes maneras:
16
Mediante la resta 2n−X
O bien a través del siguiente
procedimiento:
Se invierten todos los bits de
la palabra; se suma 1 al
resultado
El complemento a 2 de un
número previamente
complementado, nos
devuelve el número original.
Representación de enteros
para el sistema del
complemento a 2
Suponiendo palabras de n
bits:
Los números positivos se
representan en binario puro
con el bit de la posición n
igual a 0, mediante los
códigos:
000000 al 011111
Los números negativos se
representan por el
complemento a 2 con el bit
de la posición n igual a 1,
mediante los códigos
100000 al 111111
Su ámbito de representación
es:
[−2n−1, 2n−1−1]
Y su resolución es de 1
unidad.
♦ Representación de los
números reales. El
estándar IEEE 764.
En 1985 el IEEE publicó la
norma IEEE 754. Una
especificación relativa a la
17
precisión y formato de los
números de punto flotante.
Es la representación interna
usada por los procesadores
actuales. Intel (1976):
coprocesadores aritméticos
8087. El primero que
proporciona soporte al
estándar es el 80387. A
partir del 80486 (1989),
intel incorporó el procesador
matemático
John Palmer (intel)
promueve en 1976 un
estándar para punto flotante
antes de empezar el diseño
del coprocesador
matemático y del i
Kahan, Coonen, Stone son
los formadores del
K−C−S.Está inspirado en el
trabajo de Kahan para el
IBM 7094.Da lugar al
estándar IEEE 754.
Hay que establecer una
correspondencia entre el
conjunto los datos a
representar y el binario
limitado a los n bits que
constipan el ancho de
palabra en el procesador. La
codificación depende del
tipo de dato a representar y
en el caso de los reales
tenemos un problema y dos
soluciones.
El problema para la
representación interna de
números reales en el
ordenador digital estriba en
el punto decimal que separa
la parte entera y la parte
fraccionaria, además del
problema compartido con
los números enteros del
signo.
18
Las dos estrategias que hay
para solucionarlas son la
representación en punto fijo
y la más habitual, ya en casi
todos los ordenadores
modernos, representación en
coma flotante.
En la representación en
punto fijo cada número se
representa por n bits para la
parte entera y m bits para la
parte fraccionaria. De esta
forma nos ahorramos el
punto puesto que siempre
estará colocado en la misma
posición (fijo). Su principal
hándicap radica en que no
todos los números reales
pueden representarse con
este formato (dependerá de
n y de m) y un mismo
número en punto fijo puede
representar a muchos
números reales. Se
denomina rango de una
representación en punto fijo
al subconjunto de los
números reales que se puede
representar. Se denomina
resolución a la distancia
mínima entre dos números
consecutivos en punto fijo.
La resolución está
relacionada con el valor m
de la representación.
La representación en punto
flotante consta de los
campos: signo (un bit),
mantisa y exponente. La
mantisa es un número
comprendido entre 0.5 y 1 y
el exponente indica la
potencia a la que hay que
elevar la base (binaria) para
que multiplicada por la
mantisa nos reconstruya el
número. Además de
eliminar el punto decimal,
esta representación aumenta
el rango de representación.
19
Existen muchos formatos de
representación en punto
flotante. El más usado es el
estándar IEEE 754, del que
hay tipos: formato IEEE 754
simple precisión, en el que
la palabra es de 32 bits y
formato IEEE 754 doble
precisión en el que la
palabra es de 64 bits.
Difieren además de en el
tamaño de la palabra en que
se basan, en el número de
bits que asignan a cada
campo.
◊ Formato IEEE 754
simple precisión. La
palabra de 32 bits se
organiza en los
siguientes campos:
. 1 bit para el signo
− 8 bits para exponente
− 23 bits para la mantisa
◊ Formato IEEE 754
doble precisión. La
palabra de 64 bits se
organiza en los
siguientes campos:
− 1 bit para el signo
− 11 bits para la exponente
− 52 bits para la mantisa
♦ Medida de la memoria de
un ordenador.
La placa principal contiene
cada componente integral de
las computadoras
personales. La memoria de
trabajo, al igual que la CPU,
es fundamental para la
operación del sistema.
Incluso el sistema operativo
que se necesita para llevar a
cabo un programa, necesita
esta memoria para cargarse.
20
La memoria de trabajo actúa
como una especia de
"memoria a corto plazo" y
frecuentemente nos
referimos a ella como RAM
(Memoria de Acceso
Aleatorio). La CPU utiliza
esta memoria para realizar
sus funciones normales. Los
contenidos de la memoria de
trabajo se cambian y se
actualizan, según se
necesite, mientras el
procesador está en
funcionamiento. Con
frecuencia, las diferentes
secciones de los programas
se leen desde el disco duro y
se almacenan en la memoria
mientras el programa se
ejecuta. La memoria de
trabajo es una memoria
temporal, porque toda la
información almacenada se
pierde cuando la
computadora se desconecta.
Sin embargo, los
dispositivos de
almacenamiento como los
discos duros y los disquetes,
son capaces de conservar la
información de manera
permanente.
LA RAM DE 640 Kb:
HASTA HACE POCO UN
ESTANDAR.
Las computadoras
personales se suministran
hoy, según su tipo, con
memorias de hasta 8 MB.
No hace demasiado tiempo,
la medida estándar para la
memoria de trabajo de una
PC era de 640k, por lo que
en aquella poca, 1 MB se
consideraba una cantidad
increíble de memoria.
Y lo mejor de todo era que
los programas funcionaban
21
con esa memoria. Antes de
profundizar en la materia y
ocuparnos de la
administración de la
memoria, veamos las
distintas partes de la
memoria de trabajo de una
PC.
CHIPS DE MEMORIA.
En las computadoras
personales actuales se
utilizan aproximadamente
unos 12 tipos distintos de
chips de memoria. Estos
chips se combinan de
diferentes maneras según el
tamaño y alcance de la
memoria de trabajo en
concreto.
La compatibilidad con una
placa de memoria dada
viene determinada por las
tomas (zócalos) que hay en
esa placa. Los chips
simplemente se enchufan a
esas tomas, por lo que el
soldador, que se utilizaba
años atrás para realizar
ampliaciones de memoria,
ya no es necesario.
Los distintos chips que se
utilizan para la memoria de
trabajo pueden dividirse en
dos grupos: chips DRAM
(RAM dinámica) y SIMM
(Single In− line Memory
Module) o SIP (Single In−
line Packages). La
diferencia entre estos dos
grupos es fácil de explicar.
Mientras los chips de RAM
dinámica constan de
elementos individuales de
chips sencillos, en los
módulos SIMM o SIP varios
chips RAM se agrupan en
un solo elemento. Por lo
22
tanto, Los SIMM o SIP son
simplemente un grupo de
chips RAM que se han
soldado conjuntamente para
formar un único
componente. Más adelante
analizaremos esta cuestión
más detalladamente.
CHIPS DE RAM
DINAMICA.
Los chips de RAM dinámica
están situados en unas
pequeñas carcasas negras
para chips con patillas que
sobresalen de sus lados
mayores. Estas patillas
permiten que el chip este
conectado al resto del
sistema. Según la capacidad
del chip éste tendrá 16, 18, o
incluso 20 patillas. Los
chips están disponibles en
capacidades de 64, 256
kilobytes e incluso de 1
megabits, y por lo general
contienen las inscripciones
correspondientes (4164,
41256, y 411000 o 411024
respectivamente).
En los últimos tiempos se ha
venido haciendo mas
popular una versión especial
de chips RAM que utiliza
una estructura de bit
cuádruple. Estos chips
tienen cuatro veces mas
capacidad de
almacenamiento que un chip
normal de 1 bit, y están
disponibles en los modelos
464, 4256 y 4400.
Sin embargo, no debe
preocuparse por las
denominaciones de chips
RAM, ya que con un poco
de práctica podrá determinar
la capacidad de un chip
RAM por el numero de
23
patillas de cada chip (los
chips de 64 y 256 kilobits
tienen 16, los de 464 y los
de 1000 kilobits tienen 18 y
los chips de bits cuádruple
tienen 20 patillas) y por los
tres a cuatro últimos dígitos
que hay inscritos en la
carcasa del chip.
Este tipo de chips RAM se
denominan "dinámicos"
porque los contenidos de su
memoria deben refrescarse
continuamente. Esto
significa que estos chips
estén sometidos a un "ciclo
de refresco" constante. Esto
sucede simplemente por la
naturaleza de estos
componentes, porque el
elemento real de
almacenamiento es
solamente el condensador,
que puede estar cargado o
descargado. Dado que un
elemento así puede
presentar dos estados,
representan exactamente el
valor de un bit. Por lo tanto,
se necesita un condensador
para cada bit.
Por ejemplo, un chip de un
megabit, capas de almacenar
exactamente 1,040,576 bits
de información, necesita
más de un millón de
condensadores. Sin
embargo, uno de estos
condensadores pierde su
carga después de un corto
periodo de tiempo. Para
conservar la información
almacenada en el chip
durante más tiempo del
establecido, es necesario
leer el estado de los
condensadores del chip
antes de que se pierda su
carga y seguidamente
recargarlos. Esto es el
24
mencionado "ciclo de
refresco".
No se puede acceder a la
información almacenada en
el chip mientras éste este
siendo refrescado. Dado que
los intervalos entre cada
reposición varían según los
distintos tipos de chips,
puede escoger entre chips
RAM más rápidos y más
lentos. El tiempo de acceso
de los chips RAM vienen
especificados en
nanosegundos, y por lo
general oscila entre 70 y 120
nanosegundos. Contra
mayor sea el tiempo de
acceso, m s lento ser el chip.
♦ Capacidad de
direccionamiento.
La cantidad de casillas
diferentes de un byte o
direcciones de memoria
cuyo contenido es un byte,
depende del tamaño en Bits
del bus de direcciones, por
ejemplo en un
microprocesador o CPU,
como el INTEL 8088, cuyo
bus de direcciones es de 20
bits, significa que existen 20
conductores (hilos)
eléctricos en paralelo desde
la CPU hasta la memoria,
por donde circula un
número binario de 20 bits,
dando una capacidad
máxima de manejo de 220 o
1'048.576 de direcciones
validas de memoria
diferentes, lo que representa
1 Megabyte.
Los procesadores o CPU's
actuales como es el caso del
PENTIUM INTEL, poseen
32 bits en el bus de
direcciones lo que le
25
permite direccional 232
posiciones diferentes de
memoria, que significan
4096 Megabytes de
memoria.
En síntesis la capacidad de
direccionamiento de
memoria o la cantidad de
memoria teóricamente
posible que puede manejar
una CPU depende del
tamaño en Bits del bus de
direcciones.
En la práctica, aunque un
PENTIUM pueda
direccionar esta cantidad tan
enorme de memoria (4096
Mb), los megabytes usuales
en computadoras que
manejen esta CPU o
microprocesador, son del
orden de decenas de
megabytes 32, 64, o
centenas 128 y 256
Megabyte.
Para hacer que una CPU
procese información, esta se
debe hacer llegar a su
memoria RAM y decirle
donde se encuentra, lo
mismo sucede con las
instrucciones para
procesarlas.
♦ Códigos de representación
alfanumérica. El código
ASCII. UNICODE.
♦ Código ASCII (español)
ASCII, acrónimo de
American Standard Code for
Information Interchange
(Código Normalizado
Americano para el
Intercambio de la
Información). En
computación, un esquema
de codificación que asigna
valores numéricos a las
26
letras, números, signos de
puntuación y algunos otros
caracteres. Al normalizar los
valores utilizados para
dichos caracteres, ASCII
permite que los ordenadores
o computadoras y
programas informáticos
intercambien información.
ASCII incluye 256 códigos
divididos en dos conjuntos,
estándar y extendido, de 128
cada uno. Estos conjuntos
representan todas las
combinaciones posibles de 7
u 8 bits, siendo esta última
el número de bits en un
byte. El conjunto ASCII
básico, o estándar, utiliza 7
bits para cada código, lo que
da como resultado 128
códigos de caracteres desde
0 hasta 127 (00H hasta 7FH
hexadecimal). El conjunto
ASCII extendido utiliza 8
bits para cada código, dando
como resultado 128 códigos
adicionales, numerados
desde el 128 hasta el 255
(80H hasta FFH extendido).
En el conjunto de caracteres
ASCII básico los primeros
32 valores están asignados a
los códigos de control de
comunicaciones y de
impresora caracteres no
imprimibles, como
retroceso, retorno de carro y
tabulación empleados para
controlar la forma en que la
información es transferida
desde una computadora a
otra o desde una
computadora a una
impresora. Los 96 códigos
restantes se asignan a los
signos de puntuación
corrientes, a los dígitos del 0
al 9 y a las letras
mayúsculas y minúsculas
27
del alfabeto latino.
♦ ASCII (inglés)
ASCII stands for the
American Standard Code for
Information Interchange,
and is pronounced with a
hard 'c' sound, as ask−ee. As
a standard, ASCII was first
adopted in 1963 and quickly
became widely used
throughout the computer
world.
ASCII is a way of defining a
set of characters which can
be displayed by a computer
on a screen, as well as some
control characters which
have special functions.
Basic ASCII uses seven bits
to define each letter,
meaning it can have up to
128 specific identifiers, two
to the seventh power. This
size was chosen based on
the common basic block of
computing, the byte, which
28
consists of eight bits. The
eighth bit was often set
aside for error−checking
functions, leaving seven
remaining for a character
set.
Thirty−three codes in ASCII
are used to represent things
other than specific
characters. The first 32
(0−31) represent things
ranging from a chime sound,
to a line feed command, to
the start of a header. The
final code, 127, represents a
backspace. Beyond the first
31 bits are the printable
characters. Bits 48−57
represent the numeric digits.
Bits 65−90 are the capital
letters, while bits 97−122
are the lower−case letters.
The rest of the bits are
symbols of punctuation,
mathematical symbols, and
other symbols such as the
pipe and tilde.
ASCII began in theory as a
simpler character set, using
six rather than seven bits.
Ultimately it was decided
that the addition of
lower−case letters,
punctuation, and control
characters would greatly
enhance its usefulness. Not
long after its adoption, much
discussion arose about
possible replacements and
adaptations of ASCII to
incorporate non−English
and even non−Roman
characters. As early as 1972
an ISO standard (646) was
created in an attempt to
allow a greater range of
characters. A number of
problems existed with
ISO−646, however, leaving
it by the wayside.
29
The current leading
contender for replacing
ASCII is the Unicode
character set. This standard
allows for essentially
unlimited characters to be
mapped by using collections
of bytes to represent a
character, rather than a
single byte. The first byte of
all Unicode standards
remains dedicated to the
ASCII character set,
however, to preserve
backward compatibility.
ASCII is now most often
heard in the phrase ASCII
art. This describes the use of
the basic character set to
create visual approximations
of images.
♦ UNICODE (español)
Unicode proporciona un
número único para cada
carácter, sin importar la
plataforma, sin importar el
programa, sin importar el
idioma.
Básicamente, las
computadoras sólo trabajan
con números. Almacenan
letras y otros caracteres
mediante la asignación de
un número a cada uno.
Antes de que se inventara
Unicode, existían cientos de
sistemas de codificación
distintos para asignar estos
números. Ninguna
codificación específica
podía contener caracteres
suficientes: por ejemplo, la
Unión Europea, por sí sola,
necesita varios sistemas de
codificación distintos para
cubrir todos sus idiomas.
Incluso para un solo idioma
como el inglés, no había un
30
único sistema de
codificación que se adecuara
a todas las letras, signos de
puntuación y símbolos
técnicos de uso común.
Además, estos sistemas de
codificación presentan
problemas entre ellos. Es
decir, dos sistemas de
codificación pueden utilizar
el mismo número para dos
caracteres distintos o bien
utilizar números distintos
para el mismo carácter.
Toda computadora
(especialmente los
servidores) necesita ser
compatible con muchos
sistemas de codificación
distintos; sin embargo, cada
vez que los datos se
traspasan entre distintos
sistemas de codificación o
plataformas, dichos datos
siempre corren el riesgo de
sufrir daños.
Unicode proporciona un
número único para cada
carácter, sin importar la
plataforma, sin importar el
programa, sin importar el
idioma. Líderes de la
industria tales como Apple,
HP, IBM, JustSystem,
Microsoft, Oracle, SAP,
Sun, Sybase, Unisys y
muchos otros han adoptado
la norma Unicode. Unicode
es un requisito para los
estándares modernos tales
como XML, Java,
ECMAScript (JavaScript),
LDAP, CORBA 3.0, WML,
etc., y es la manera oficial
de aplicar la norma ISO/IEC
10646. Es compatible con
muchos sistemas operativos,
con todos los exploradores
actuales y con muchos otros
productos. La aparición de
31
la norma Unicode y la
disponibilidad de
herramientas que la
respaldan, se encuentran
entre las más recientes e
importantes tendencias en
tecnología de software.
La incorporación de
Unicode en sitios Web y en
aplicaciones de
cliente−servidor o de
múltiples niveles permite
disminuir ostensiblemente
los costos del uso de juegos
de caracteres heredados.
Unicode permite que un
producto de software o sitio
Web específico se oriente a
múltiples plataformas,
idiomas y países sin
necesidad de rediseñarlo.
Además permite que los
datos se trasladen a través
de muchos sistemas
distintos sin sufrir daños.
♦ UNICODE (inglés)
Unicode provides a unique
number for every
character,no matter what the
platform,no matter what the
program,no matter what the
language.
Fundamentally, computers
just deal with numbers.
They store letters and other
characters by assigning a
number for each one. Before
Unicode was invented, there
were hundreds of different
encoding systems for
assigning these numbers. No
single encoding could
contain enough characters:
for example, the European
Union alone requires several
different encodings to cover
all its languages. Even for a
single language like English
32
no single encoding was
adequate for all the letters,
punctuation, and technical
symbols in common use.
These encoding systems
also conflict with one
another. That is, two
encodings can use the same
number for two different
characters, or use different
numbers for the same
character. Any given
computer (especially
servers) needs to support
many different encodings;
yet whenever data is passed
between different encodings
or platforms, that data
always runs the risk of
corruption.
Unicode provides a unique
number for every character,
no matter what the platform,
no matter what the program,
no matter what the
language. The Unicode
Standard has been adopted
by such industry leaders as
Apple, HP, IBM,
JustSystem, Microsoft,
Oracle, SAP, Sun, Sybase,
Unisys and many others.
Unicode is required by
modern standards such as
XML, Java, ECMAScript
(JavaScript), LDAP,
CORBA 3.0, WML, etc.,
and is the official way to
implement ISO/IEC 10646.
It is supported in many
operating systems, all
modern browsers, and many
other products. The
emergence of the Unicode
Standard, and the
availability of tools
supporting it, are among the
most significant recent
global software technology
trends.
33
Incorporating Unicode into
client−server or multi−tiered
applications and websites
offers significant cost
savings over the use of
legacy character sets.
Unicode enables a single
software product or a single
website to be targeted across
multiple platforms,
languages and countries
without re−engineering. It
allows data to be transported
through many different
systems without corruption.
◊ ejercicios de
codificación de la
información y
capacidad de
direccionamiento
◊ Enunciados.
◊ En cierto lenguaje
de programación
los números
positivos se
codifican en 126
bits. ¿Cuál es el
mayor número que
puede
representarse?
Solución1
◊ En el
microprocesador
intel Pentium la
memoria se
direcciona con un
registro de 32 bits.
¿Cuántas
posiciones de
memoria pueden
direccionarse?
Solución2
◊ En cierto sistema
de codificación
alfanumérica el >
tiene el código
decimal 62, ¿cuál
es su
representación
binaria en 1byte?
Solución3
34
◊ Un ordenador
representa los
números enteros
en registros de 16
bits en
complemento a 2,
¿cuál es la
representación
binaria de −296?
Solución4
◊ Pasar ? a
hexadecimal,
decimal y octal. En
binario es 0011
1111. Solución5
◊ ¿Cuál es en
decimal la última
posición de
memoria de una
memoria de
128kb? Solución6
◊ El
microprocesador
Motorola 68000
tiene un bus de
direcciones externo
de 24 bits. ¿Qué
capacidad de
direccionamiento
tiene? Solución7
◊ El modelo de color
de java sigue el
formato RGB,
cada color se
representa como
una numeración de
rojo, verde y azul;
cada componente
de color se
almacena en 1byte
(con un valor, por
tanto, entre 0 y
255). El valor 0
indica que el
componente no
está presente; el
valor 255 indica
que está
completamente
agregado. Por
ejemplo: el color
rojo es 255.00; el
35
color rosa
255.175.175; el
color gris es
128.128.128.
¿Cuántos colores
distintos hay? Si se
quiere almacenar
el color de una
pantalla de 800 x
600 píxeles (para lo
que deberá
almacenarse el
color de cada
píxel), ¿cuál es la
cantidad de
memoria que se
necesita?
Solución8
◊ Restar los números
binarios 10110101
− 10000111.
Solución9
◊ Un sistema
informático
representa los
números enteros
en un registro de
un byte en
complemento a 2.
¿Cuál es la
representación
binaria del número
−299? Solución10
◊ ¿Cuál es en
decimal la última
posición de una
memoria 3Kb?
Solución11
◊ En cierto lenguaje
de programación
los números
enteros positivos se
codifican en 64
bits. ¿Cuál es el
mayor número que
puede
representarse?
Solución12
◊ Un ordenador
representa los
números enteros
en registros de 10
36
bits en
complemento a
dos. ¿Cuál es la
representación
binaria del número
−312? Solución13
◊ La codificación
ASCII del símbolo
`<' tiene el código
decimal 62. ¿Cuál
es la
representación en
binario de dicho
carácter en un
byte? Solución14
◊ Cierto
microprocesador
utiliza un bus de
direcciones de 18
bits. ¿Cuál es la
máxima cantidad
de memoria que
puede direccional
(en KB)?
Solución15
◊ Efectuar la suma
en hexadecimal:
4B3A + 81B2
Solución16
◊ El contenido de la
dirección
77F52hex de la
memoria de un
ordenador
contiene el byte 6F.
¿Cuál es la
representación de
binaria de ese
byte? Solución17
◊ ¿Cuántos disquetes
de 1.44Mb de
capacidad se
pueden almacenar
en un disco duro
de 20 Gb?
Solución18
◊ Construir la tabla
del circuito:
◊ Construir la tabla
del circuito:
◊ Construir la tabla
37
del circuito:
◊ Utilizando puertas
AND, OR y NOT,
construir un
circuito cuya tabla
sea:
A B
S
0 0
1
0 1
0
1 0
0
1 1
1
◊ Utilizando puertas
AND, OR y NOT,
construir un
circuito cuya tabla
sea:
◊ Soluciones.
◊ En cierto lenguaje
de programación
los números
positivos se
codifican en 126
bits. ¿Cuál es el
mayor número que
puede
representarse?
2126−1
◊ En el
microprocesador
intel Pentium la
memoria se
direcciona con un
registro de 32 bits.
¿Cuántas
posiciones de
memoria pueden
direccionarse?
232 = (210)3 x 22 =
4GB
◊ En cierto sistema
de codificación
alfanumérica el >
tiene el código
decimal 62, ¿cuál
es su
representación
38
binaria en 1byte?
0011 1110
◊ Un ordenador
representa los
números enteros
en registros de 16
bits en
complemento a 2,
¿cuál es la
representación
binaria de −296?
+296 ! 0000 0001
0010 1000
1111 1110 1101
0111 + 1 = 1111
1110 1101 1000
−296 ! 1111 1110
1101 1000
◊ Pasar ? a
hexadecimal,
decimal y octal. En
binario es 0011
1111.
0011 1111 ! (3F)16
! (63)10 ! (077)8
◊ ¿Cuál es en
decimal la última
posición de
memoria de una
memoria de
128kb?
128 Kb = 128 x 210
= 128 x 210 − 1 =
131071
◊ El
microprocesador
Motorola 68000
tiene un bus de
direcciones externo
de 24 bits. ¿Qué
capacidad de
direccionamiento
39
tiene?
224 = 24 x 220 = 16
Mb
◊ El modelo de color
de java sigue el
formato RGB,
cada color se
representa como
una numeración de
rojo, verde y azul;
cada componente
de color se
almacena en 1byte
(con un valor, por
tanto, entre 0 y
255). El valor 0
indica que el
componente no
está presente; el
valor 255 indica
que está
completamente
agregado. Por
ejemplo: el color
rojo es 255.00; el
color rosa
255.175.175; el
color gris es
128.128.128.
¿Cuántos colores
distintos hay? Si se
quiere almacenar
el color de una
pantalla de 800 x
600 píxeles (para lo
que deberá
almacenarse el
color de cada
píxel), ¿cuál es la
cantidad de
memoria que se
necesita?
◊ Restar los números
binarios 10110101
− 10000111.
10110101 −
10000111 = 101110
40
◊ Un sistema
informático
representa los
números enteros
en un registro de
un byte en
complemento a 2.
¿Cuál es la
representación
binaria del número
−299?
No se puede
codificar
◊ ¿Cuál es en
decimal la última
posición de una
memoria 3Kb?
3 " 1024 − 1 = 3071
◊ En cierto lenguaje
de programación
los números
enteros positivos se
codifican en 64
bits. ¿Cuál es el
mayor número que
puede
representarse?
264 − 1 =
18.446.744.073.709.551.615
◊ Un ordenador
representa los
números enteros
en registros de 10
bits en
complemento a
dos. ¿Cuál es la
representación
binaria del número
−312?
10.1100.1000
◊ La codificación
ASCII del símbolo
`<' tiene el código
decimal 62. ¿Cuál
41
es la
representación en
binario de dicho
carácter en un
byte?
0011.1110
◊ Cierto
microprocesador
utiliza un bus de
direcciones de 18
bits. ¿Cuál es la
máxima cantidad
de memoria que
puede direccional
(en Kb?
218 = 28 " 210 =
256 Kb
◊ Efectuar la suma
en hexadecimal:
4B3A + 81B2
4B3A + 81B2 =
CCEC
◊ El contenido de la
dirección
77F52hex de la
memoria de un
ordenador
contiene el byte 6F.
¿Cuál es la
representación de
binaria de ese
byte?
0110.1111
◊ ¿Cuántos disquetes
de 1.44Mb de
capacidad se
pueden almacenar
en un disco duro
de 20 Gb?
20 Gb = 1024 Mb "
20 = 20480 ; 20480:
1.44 = 14222
42
⋅ referencias
a páginas
web
⋅ Administración
y gestión
municipal.
Willys
Leopoldo
Hernández
Farias.
URL:
http://boards5.melodysoft.com
⋅ URL:
http://www.dma.eui.u
⋅ Revolución
y evolución.
Luis
Sánchez,
responsable
de IT de
Microsoft
Business
Solutions.
URL:
http://www.tecnomarkets.com
⋅ Curso:
arquitectura
de
ordenadores.
URL:
http://www.mailxmail.com/c
⋅ Funcionamiento
de un
ordenador.
Centro de
Tecnología
Informática.
Universidad de
Navarra.
URL:
http://www.unav.es/cti/manu
⋅ Punto fijo
en
complemento
a 2. Àngel
Puigdelliure.
URL:
43
http://www.aerostatik.org/20
FUNDAMENTOS
DE
INFORMÁTICA
2
44
Descargar