Download Unidad 1 Introduccion Ciencias de la

Document related concepts

MIX (lenguaje de programación) wikipedia , lookup

Archivo binario wikipedia , lookup

Paginación de memoria wikipedia , lookup

Transcript
1. INTRODUCCIÓN
1.1- Definiciones
Informática,
componentes
computador
y
1.2- Hardware. Estructura de un computador
1.2.1 Unidades de Entrada/Salida
1.2.2 Memoria
1.2.3 Unidad Central de Proceso (UCP/CPU)
1.2.4 Representación de los datos (Bit)
1.3- Software
1.3.1 Sistema Operativo
1.3.2 Aplicaciones Generales
sus
1.1 Informática: Definición
INFORmación
autoMÁTICA
INFORMÁTICA
Informática = ciencia encargada del tratamiento
automático de la información
1.1 computador
Datos de entrada
Y
ordenes
Entrada
computador
Salida
Datos de salida
O
resultados
“El computador es una máquina electrónica digital que realiza
operaciones aritmético-lógicas con los datos de entrada hasta que
obtiene el resultado”
1.1 computador
El computador maneja dos tipos de información
Ordenes: especifican lo que debe hacer
el computador
Datos: información que utilizan (datos de entrada) o
generan (datos de salida o resultados) las ordenes
1.1 Componentes del computador:
Hardware y Software
Los componentes físicos (circuitos integrados,
cables, teclado, …) de la maquina constituyen lo
que se denomina el soporte físico o hardware.
Software: conjunto de aplicaciones o programas
que se pueden ejecutar en el computador (sistema
operativo, procesador de textos, hojas de
cálculo,…)
Programas
1.2 Hardware.
Estructura de un computador
Unidad de
entrada
Unidad
Central de
Proceso
(CPU)
Buses
Unidades
de Salida
1.2 Estructura del computador
UNIDAD CENTRAL DE PROCESO (UCP/ CPU)
UNIDAD DE
ENTRADA
ordenes
UNIDAD DE
CONTROL
UNIDAD
ARITMETICOLOGICA
(CU)
(UAL/ALU)
datos
UNIDAD DE
SALIDA
resultados
ordenes
MEMORIA
datos
UNIDAD PRINCIPAL
información
control
resultados
1.2.1 UCP (CPU)
Unidad de Control (UC)

Dirige y controla el funcionamiento del
computador

Coge las ordenes, las interpreta y se
encarga de que se ejecuten

Características:

Bit (8, 16, 32, 64, ...)

Velocidad (2Ghz)

Pentium, Athlon, Duron, PowerPC,…
1.2.3.1 UCP (Hz)
HERTZIO La Unidad de Control contiene un
reloj interno (generador de impulsos) que
sincroniza todas las operaciones elementales
del computador. El periodo de esta señal se
denomina tiempo de Ciclo, y su frecuencia
puede darse en millones de ciclos por
segundo denominados Mega Hertzios MHz
80386->25Mhz. (Megahertzios)
88486->55,66 Mhz
Pentium,AMD->100,133.....2GHz
1.2.1 UCP (CPU)
Unidad Aritmético-Lógica (UAL/ALU)
Realiza operaciones aritméticas (suma, resta, multiplicación,
división) y lógicas (comparación,…)
(De la Memoria)
1er Operando
Ordenes
(de la UC)
2º Operando
UAL
Resultado
(A la memoria)
Estado
1.2.2 Unidades de Entrada/Salida (E/S)

Puente entre el computador y el exterior

Salida


pantalla, impresora, ......
Entrada

teclado, ratón, ......
1.2.3 Memoria


Almacén del computador

Datos

Resultados parciales

Instrucciones que constituyen los programas
Clasificación

Memoria principal o memoria interna

Memoria auxiliar o memoria para almacenamiento
masivo
1.2.2 Memoria principal
Gran Velocidad
 Poca Capacidad


RAM
Almacena los datos e instrucciones que va a utilizar el
procesador
 Volátil


ROM
Contiene los programas y rutinas de E/S que necesita el
computador para arrancar
 No volátil\ No se puede modificar


Cache

Contiene los datos\instrucciones más recientes
1.2.3 Memoria auxiliar





Velocidad de acceso baja
Gran Capacidad
Almacena programas y datos (Ej. Sistema
operativo, aplicaciones)
Almacena la información cuando se apaga el
computador
Memorias magnéticas




Disco duro (1-100 GB)
Diskettes (1,44 MB)
ZIP, JAZ, cintas, ...
Memorias ópticas



CD-ROM (650 MB)
CD-R, CD-RW (650 MB)
DVD, …
1.2.3 Memoria
Cache
+
+
Capacidad
CPU
RA
M
Disco Duro
Cinta
Precio - Velocidad
1.2.3.1 Representación de la Información
0
BIT
1
0y1
Representación de los caracteres
Representación de los números
1348 = 1*103 + 3*102 + 4*101 + 8*100
1010 = 1*23 + 0*22 + 1*21 + 0*20
Código ASCII
0 0011 0000
1 0011 0001
A 0100 0001
B 0100 0010
........................
1.2.3.1 Unidad de Información (Memoria)
• Los computadores funcionan según una modalidad llamada binaria,
esto significa que los componentes del computador pueden indicar
únicamente dos estados o condiciones posibles, es decir, las tensiones
específicas estarán presentes o ausentes.
• utiliza solamente dos símbolos para representar toda su información;
cero (0) y uno (1), denominándose comúnmente a estas notaciones
binarias bits.
• establecer una correspondencia entre el conjunto de los caracteres
utilizados por el usuario (A,B,C,...a,b,c,.. 1,2,3,.../,*,(,...) y los utilizados
por la máquina (0,1), es decir, se necesita hacer una codificación o
representación de los elementos de un conjunto (usuario) con los
elementos de otro conjunto (máquina)
1.2.3.1 Unidad de Información (Memoria)
• Esa codificación se realizará mediante los denominados códigos de
transformación:
• ASCII:American Standard Code for Information Interchange.
Estándar Americano para Intercambio de Información. La tabla
básica de caracteres ASCII esta compuesta por 128 caracteres
incluyendo símbolos y caracteres de control. En ASCII cada carácter
está representado por 7 bits(unos ó ceros). Existe una versión
extendida de 256 caracteres.
• EBCDIC (Fully, "Extended Binary Coded Decimal Interchange
Code") is an 8-bit character encoding used on IBM mainframes and
AS/400s.
• Unicode: es una norma de codificación de caracteres. Su objetivo
es asignar a cada posible carácter de cada posible lenguaje un número
y nombre único, a diferencia de la mayor parte de los juegos ISO
como el ISO-8859-1, que sólo definen los necesarios para un idioma
1.2.3.1 Unidad de Información (Memoria)
• las operaciones aritméticas con datos numéricos
se suelen realizar en una representación más
adecuada para este objetivo: basada en el sistema
de numeración en base dos, sistema que puede
considerarse como una codificación en binario,
pero que al ser una representación numérica
posicional es muy apta para la realización de
operaciones aritméticas.
con 2 bits con 3 bits con 4 bits
00
01
10
11
22
000
001
010
011
100
101
110
111
23
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110 24
1111
1.2.3.1 Sistemas de Numeración y Binario
•El hombre trabaja normalmente en sistema
decimal y el computador en binario.
•El sistema de numeración decimal (base 10),
utiliza diez símbolos (0, 1, 2, 3, ..., 9).
•El sistema de numeración binaria (base 2)
utiliza solamente dos símbolos (0 y 1).
•La posición de uno de estos símbolos en un
número indica la potencia que se asigna a este
símbolo " Sistema posicional ".
•sistema de numeración decimal (base 10):
837=8 * (102) + 3 * (101) + 7 * (100)
•sistema de numeración binario (base 2):
1101000101=1*(29)+1*(28)+0*(27)+1*(26)+0*(
25)+0*(24)+0*(23)+1*(22)+0*(21)+1*(20)=837
1.2.3.1 Conversión Decimal a Binario
• Regla: Se divide el número decimal por 2 y se
obtiene el número binario de los restos.
248 | 2
04
124 | 2
08
04 62 | 2
0
0 02 31 | 2
0 11 15 | 2
1
1
7 | 2
1
3 | 2
1
1
<-------248 (decimal) -> 11111000 (binario)
1*(27)+1*(26)+......+0*(20)->248
1.2.3.1 Sistema de numeración Hexadecimal
•
computadores
utilizan
el
sistema
de
numeración binario para los procesos internos,
al requerir dicha información el usuario, la
comunicación se establece mediante un sistema
de
numeración
intermedio
como
es
el
hexadecimal, de modo, que dicha comunicación
no resulte una interminable colección de 0 y
1.
• Hexadecimal
significa
16,
los
símbolos
utilizados serán del 0 al 9 y las letras de la
A a la F, por lo que para representar
cualquier información almacenada en un octeto,
mediante el sistema de numeración binario, es
decir, mediante ocho unos o ceros, se podrá
realizar con dos símbolos hexadecimales
1.2.3.1 Sistema de numeración Hexadecimal
DECIMAL
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
HEXADECIMAL
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
BINARIO
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
1.2.3.1 Sistema de numeración Hexadecimal
El proceso de conversión será similar a los
tratados con anterioridad:
248 | 16
088
15
8
248(decimal)=15 8 = F8 = F8(hexadecimal)
F8(hex)=F*(161)+8*(160)=15*16+ 8*1(decimal)
1.2.3.1 Sistema de Binario (Operaciones
Matemáticas)
SUMA
RESTA
0+0=0
0+1=1
1+0=1
1+1=0 y llevo 1
0-0=0
0-1=1 y debo 1
1-0=1
1-1=0
MULTIPLICACION
DIVISION
0.0=0
0.1=0
1.0=0
1.1=1
0:0=0:1=0
1:0=oo
1:1=1
1.2.3.1 Sistema de Binario (Operaciones
Lógicas)
Otro tipo de operaciones son las booleanas u
operaciones lógicas : AND, OR y NOT. Estas
operaciones se rigen según las siguientes
tablas:
SUMA BOOLEANA (OR)
PRODUCTO BOOLEANO (AND)
0
0
1
1
OR
OR
OR
OR
0=0
1=1
0=1
1=1
INVERSION BOOLEANA (NOT)
NOT 0 = 1
NOT 1 = 0
0
0
1
1
AND
AND
AND
AND
0=0
1=0
0=0
1=1
1.2.3.1 Representación Interna de la
Información
• Los computadores procesan dos tipos de
información: las INSTRUCCIONES que forman
parte del programa y los DATOS que manejarán
dichas instrucciones.
• En
la
Unidad
Central
de
Proceso
la
información se transmite y procesa en unidades
denominadas palabras. La longitud de la
palabra depende de la estructura interna de
cada modelo de computador, pudiendo ser las
mas normales de 8, 16, 32, 64 bits.
1.2.3.1 Representación Interna de la
Información
• Para leer o escribir un dato o ejecutar una
instrucción del programa almacenado en la
memoria principal se da la dirección de la
palabra donde se quiere leer o escribir, por
tanto para obtener un buen aprovechamiento de
la memoria, la longitud de la palabra, debe
ser un múltiplo del número de bits utilizados
para representar un carácter.
• Así en los computadores de 8,16,32,64 bits
se utilizan códigos de E/S de 8 bits (EBCDIC o
ASCII)
y
tanto
las
longitudes
de
las
instrucciones como la longitud de los datos
serán múltiplos de 8.
1.2.3.1 Tipos de Datos (Representación
Interna)
La representación interna de datos depende del
tipo de dato y del lenguaje de programación.
Los tipos de datos más significativos pueden
ser:
• TEXTO o CARÁCTER
• LOGICO
• COMPLEJO SIMPLE O DOBLE
• ENTERO
• REAL SIMPLE O DOBLE PRECISION
1.2.3.1 Representación Interna de los Datos
Tipo Texto o Carácter
• Los datos tipo Carácter o texto se suelen
denominar Alfabéticos si están compuestos
solamente por letras y Alfanuméricos si están
compuestos por letras, números y/o caracteres
especiales.
• Estos tipos de datos se almacenan siempre en
el código de E/S utilizado por el computador.
En el caso del ASCII o EBCDIC, un carácter por
byte, sin realizarse internamente ninguna
transformación.Ejm: MICRO
0100 1101
0100 1001
0100 0011
0101 0010
0100 1111
1.2.3.1 Representación Interna de los Datos
Lógico
• Representan un valor del álgebra de Boole
binaria:
-0 falso
-1 verdadero
•La representación interna de este tipo de
dato es muy variada siendo quizá la mas común
la de completar todo el espacio de la palabra
a ceros o a unos dependiendo del caso, o el de
identificar el dato solamente con el bit
extremo derecho 0 ó 1.
1.2.3.1 Representación Interna de los Datos
Entero
• La representación en binario puro consiste
en el almacenamiento de los números, descritos
mediante el sistema de numeración decimal, en
el sistema de numeración binario.
Ejemplo:
En una palabra de (16 bits) almacenar el
número entero 15.
15 | 2
1
7 | 2
1
3 | 2
1
1
¦ 0000
¦ 0000
¦ 0000 ¦ 1111 ¦
1.2.3.1 Representación Interna de los Datos
Entero (Binario con Signo)
• El signo se representa en el bit extremo
izquierdo de la palabra mediante:
0 ... +
1 ... +15 ¦ 0000 ¦ 0000 ¦ 0000 ¦ 1111 ¦
-15 ¦ 1000 ¦ 0000 ¦ 0000 ¦ 1111 ¦
• De esta forma, el mayor número almacenable
en 2 bytes sería representado por 15 unos con
lo que se podría almacenar un número:
215 =32768 números (0 a 32767) donde el bit
16 es el signo(-32767..-0,0..+32767)
1.2.3.1 Representación Interna de los Datos
Entero (Complemento a 2)
• Para representar un número negativo se puede utilizar el
complemento de ese número a la base.
• El complemento a la base de un número, es el número que
resulta de restar a cada una de las cifras del número N a
la base menos uno del sistema que se esté utilizando y
posteriormente sumar uno a la diferencia obtenida.
•Ejemplo: Complemento en base 10 del número 53
(base-1=9)1ºPaso:99-53=46
2ºPaso:46+ 1=47
1.2.3.1 Representación Interna de los Datos
Entero (Signo)
• Ejemplo: Restar 65-23 mediante complemento a
10
Esta debiera ser 65-23=42.
1ºpaso:99-23=76 +1 =77 (complemento base 10 de
23, sustraendo)
2ºpaso:65+77=142(descartamos
lo
cifra
arrastrada)
• Ejemplo: realizar la misma operación 65-23
mediante complemento en base 2 donde 6510) =
0100 00012) y 2310) = 0001 01112).
1º Paso: 1111 1111 - 0001 0111 = 1110 1000 + 1
= 1110 1001
2º Paso: 0100 0001 + 1110 1001 = 1 0010 1010 =
4210)
1.2.3.3 Representación de la información
Representar –8 en complemento a 2
 Representación binaria de 8: 1000
 Representar en Complemento a 1 del número
positivo:1111-1000 = 0111
0111
+ 0001
-----------1000 <== Representación en C2 del -8
1.2.3.1 Representación Interna de los Datos
Entero (Signo)
VALORES
COMPLEMENTO
COMPLEMENTO
+/- (signo)
A 1
A 2
---------------------------------------------+ 0
0 000
0000
0000
+ 1
0 001
+ 2
0 010
+ 3
0 011
lo mismo
lo mismo
+ 4
0 100
+ 5
0 101
+ 6
0 110
+ 7
0 111
0111
0111
+ 8
*(0 1000) No se puede representar en 4
bits
1.2.3.1 Representación Interna de los Datos
Entero (Signo)
VALORES
COMPLEMENTO
COMPLEMENTO
+/- (signo)
A 1
A 2
---------------------------------------------- 0
1 000
1111
****
- 1
1 001
1110
1111
- 2
1 010
1101
1110
- 3
1 011
1100
1101
- 4
1 100
1011
1100
- 5
1 101
1010
1011
- 6
1 110
1001
1010
- 7
1 111
1000
1001
- 8 *(0 1000)
****
1000
1.2.3.1 Representación Interna de los Datos
Entero (Complemento a 2)
• Observamos que para transformar un número binario N
a complemento a 2 basta con cambiar los 0 por 1 y los 1
por 0 de N y sumar 1 al resultado.
• 2 ventajas:
-De esta forma las sumas y restas quedan reducidas a
sumas. Con lo que se reduce la complejidad de los
circuitos.
-números negativos permitan tener un valor
más que los positivos, es decir, en dos
bytes se podría almacenar desde + 32767
hasta -32768
1.2.3.1 Unidad de Información (Memoria)
BIT . Unidad básica de información (un hueco de 0 o 1)
BYTE = 23 BIT=8 BIT
KILOBYTE = 210 BYTE = 1024 BYTE
MEGABYTE = 220 BYTE= 1024 KBYTE
GIGABYTE = 230 BYTE= 1024 MBYTE
TERABYTE = 240 BYTE= 1024 GBYTE
1.3 Software

Categorías de Software

Sistemas Operativos: MS/DOS, UNIX,
WINDOWS,LINUX...

Aplicaciones: Procesadores de texto, hojas de
cálculo, sistemas de gestión de bases de
datos, juegos...

Entornos de Programación: Visual Basic,
Fortran, Pascal, C, Java ....
1.3.1 Sistema Operativo
“Software diseñado para gestionar los recursos del
computador”
Aplicaciones
Lenguajes de Programación
Sistema Operativo
Hardware
Sistema Operativo
Programas
Sistema
Operativo
Sistema Operativo


Funciones

Reparto del tiempo de ejecución

Gestión de la Entrada/Salida

Gestión de la memoria

Gestión de la información, ...
Características de un buen sistema operativo

Eficiente

Fiable

Fácil de Mantener
Consume pocos recursos
Clasificación de los sistemas operativos
Monousuario (1) / Multiusuario (2)
1. Todos los recursos y datos estan en manos del usuario que
trabaja en el computador
2. Los datos y recursos son compartidos por los distintos usuarios
que utilizan el computador
Monotarea (1) / Multitarea (2)
1. El procesador está dedicado en exclusiva a una única tarea
2. Realiza más de una tarea a la vez. (Reparte el tiempo de
CPU entre distintas tareas)
Sistemas Operativos más extendidos
MS-DOS
OS/2
OS/400
3.X
95
WINDOWS
98
IRIX
AIX
NT
XENIX
UNIX
2000
XP
LINUX
1.3.2 Aplicaciones generales
•
Procesadores de Textos (Word)
•
SGBD (access, Oracle, ...)
•
Hojas de Cálculo (Excel, Lotus)
•
Programas de Diseño
•
Software de Comunicaciones
(redes de computadores: Internet)