Un sistema operativo actúa como interfaz entre los dispositivos de hardware y los programas del usuario. Está compuesto por cuatro módulos principales: el núcleo, el administrador de memoria, el sistema de entrada/salida y el administrador de archivos. Cada módulo se encarga de gestionar los recursos del sistema y coordinar las actividades para permitir la ejecución concurrente de procesos.
ACERTIJO DE CARRERA OLÍMPICA DE SUMA DE LABERINTOS. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
El Mtro. JAVIER SOLIS NOYOLA, crea y desarrolla ACERTIJO: «CARRERA OLÍMPICA DE SUMA DE LABERINTOS». Esta actividad de aprendizaje lúdico que implica de cálculo aritmético y motricidad fina, promueve los pensamientos lógico y creativo; ya que contempla procesos mentales de: PERCEPCIÓN, ATENCIÓN, MEMORIA, IMAGINACIÓN, PERSPICACIA, LÓGICA LINGUISTICA, VISO-ESPACIAL, INFERENCIA, ETCÉTERA. Didácticamente, es una actividad de aprendizaje transversal que integra áreas de: Matemáticas, Neurociencias, Arte, Lenguaje y comunicación, etcétera.
Presentacion general (Fundamentos de Programacion)
1.
2. Un Sistema Operativo (SO) es un software que actúa de interfaz
entre los dispositivos de hardware y los programas usados por el
usuario para utilizar un computador. Es responsable de
gestionar, coordinar las actividades y llevar a cabo el intercambio
de los recursos y actúa como estación para las aplicaciones que se
ejecutan en la máquina.
Uno de los propósitos de un Sistema Operativo como programa
estación principal, consiste en gestionar los recursos de
localización y protección de acceso del hardware, hecho que alivia
a los programadores de aplicaciones de tener que tratar con estos
detalles. Se encuentran en la mayoría de los aparatos electrónicos
que utilizan microprocesadores para funcionar. (teléfonos
móviles, reproductores de DVD, computadoras, radios, etc.)
3. Un Sistema Operativo está conformado
básicamente por cuatro módulos:
Núcleo o Kernel.
Administrador de memoria.
Sistema de entrada/salida.
Administrador de archivos.
4. Es el módulo de más bajo nivel de un sistema operativo, pues descansa
directamente sobre el hardware de la computadora. Entre las tareas que
desempeña se incluyen el manejo de las interrupciones, la asignación de
trabajo al procesador y el proporcionar una vía de comunicación entre los
distintos programas. En general, el núcleo se encarga de controlar el
resto de los módulos y sincronizar su ejecución. El núcleo contiene un
submódulo denominado "planificador", el cual se encarga de asignar
tiempo del procesador a los programas, de acuerdo a una cierta política
de planificación que varía de un sistema operativo a otro. Normalmente
se utiliza una jerarquía de prioridades que determinan cómo se asignará
el tiempo del CPU a cada programa. Una política de planificación muy
común en los sistemas de multiprogramación y multiproceso son las
técnicas de "time slicing" (fracción de tiempo). Se asigna a cada programa
un corto intervalo de tiempo del procesador. Si el programa no ha
terminado durante este intervalo de tiempo, vuelve a la cola de
programas.
5. Este módulo se encarga de asignar ciertas porciones
de la memoria principal (RAM) a los diferentes
programas o partes de los programas que la
necesiten, mientras el resto de los datos y los
programas se mantienen en los dispositivos de
almacenamiento masivo. De este modo, cuando se
asigna una parte de la memoria principal se hace de
una forma estructurada, siguiendo un determinado
orden. La forma más común de administración de la
memoria supone crear una memoria virtual; con este
sistema, la memoria de la computadora aparece, para
cualquier usuario del sistema, mucho mayor de lo que
en realidad es.
6. Este componente presenta al usuario la E/S de datos como
una cuestión independiente del dispositivo; es decir, para
los usuarios, todos los dispositivos tienen las mismas
características y son tratados de la misma forma, siendo el
sistema operativo el encargado de atender las
particularidades de cada uno de ellos (como su velocidad
de operación). Una técnica muy común, especialmente en
salida, es el uso de "spoolers". Los datos de salida se
almacenan de forma temporal en una cola situada en un
dispositivo de almacenamiento masivo (el spool), hasta
que el dispositivo periférico requerido se encuentre libre;
de este modo se evita que un programa quede retenido
porque el periférico no esté disponible. El sistema
operativo dispone de llamadas para añadir y eliminar
archivos del spool.
7. Se encarga de mantener la estructura de los datos y
los programas del sistema y de los diferentes usuarios
(que se mantienen en archivos) y de asegurar el uso
eficiente de los medios de almacenamiento masivo. El
administrador de archivos también supervisa la
creación, actualización y eliminación de los
archivos, manteniendo un directorio con todos los
archivos que existen en el sistema en cada momento y
coopera con el módulo administrador de memoria
durante las transferencias de datos desde y hacia la
memoria principal. Si se dispone de un sistema de
memoria virtual, existen transferencias entre la
memoria principal y los medios de almacenamiento
masivo para mantener la estructura de la misma.
8. Permitir la concurrencia de procesos, traslapándose el tiempo de entrada/salida (E/S) con el
de cálculo y ocupando la memoria con varios programas.
Posibilitar la ejecución de cualquier proceso en el momento que se solicite siempre y cuando
haya suficientes recursos libres para él.
Ser eficiente en cuanto a reducir: el tiempo medio que ocupa cada trabajo, el tiempo que no
se usa la CPU, el tiempo de respuesta en sistemas multiacceso y el plazo entre dos
asignaciones de CPU a un mismo programa.
Ser eficiente en cuanto a aumentar la utilización de recursos en general, tales como
memoria, procesadores, dispositivos de E/S, discos magnéticos, datos, etc.
Ser fiable, es decir, un sistema operativo no debe tener errores y debe prever todas las
posibles situaciones.
Ser de tamaño pequeño.
Posibilitar y facilitar en lo posible el "diálogo" entre computadora y usuario de la misma.
Permitir compartir entre varios usuarios los recursos de hardware con que cuenta una
computadora.
Permitir a los usuarios compartir datos entre ellos, en caso necesario.
Facilitar la E/S de los diferentes dispositivos conectados a una computadora.
9. Aceptar los trabajos y conservarlos hasta su finalización.
Detectar errores y actuar de modo apropiado en caso de que se produzcan.
Controlar las operaciones de E/S.
Controlar las interrupciones.
Planificar la ejecución de tareas.
Entregar recursos a las tareas.
Retirar recursos de las tareas.
Proteger la memoria contra el acceso indebido de los programas.
Soportar el multiacceso.
Proporcionar al usuario un sencillo manejo de todo el sistema.
Aprovechar los tiempos muertos del procesador.
Compartir los recursos de la máquina entre varios procesos al mismo tiempo.
Administrar eficientemente el sistema de cómputo como un todo armónico.
Permitir que los diferentes usuarios se comuniquen entre sí, así como protegerlos unos de otros.
Permitir a los usuarios almacenar información durante plazos medianos o largos.
Dar a los usuarios la facilidad de utilizar de manera sencilla todos los recursos, facilidades y lenguajes de
que dispone la computadora.
Administrar y organizar los recursos de que dispone una computadora para la mejor utilización de la
misma, en beneficio del mayor número posible de usuarios.
Controlar el acceso a los recursos de un sistema de computadoras.
10. Debido a la evolución de los sistemas operativos
fue necesario realizar una clasificación;
considerando las diferencias existentes entre
sus componentes los podemos clasificar en:
Sistemas operativos por lotes.
Sistemas operativos multiprogramación.
Sistemas operativos multiusuario.
Sistemas operativos de tiempo compartido.
Sistemas operativos de tiempo real.
11. Los sistemas operativos por lotes requieren
que la información esté reunida en bloque o
"lote" (el programa, los datos, y las
instrucciones). Los trabajos son procesados
en el orden de admisión, según el modelo de
"primero en llegar primero en ser atendido".
En estos sistemas la memoria se divide en
dos zonas. Una de ellas es ocupada por el
sistema operativo, y la otra se usa para cargar
programas transitorios para su ejecución.
Cuando termina la ejecución de un programa
12. Los sistemas de multiprogramación son capaces de
soportar dos o más procesos concurrentes
múltiples, permiten que residan al mismo tiempo en la
memoria primaria las instrucciones y los datos
procedentes de dos o más procesos. Estos sistemas
implican la operación de multiproceso, para el manejo
de la información. Se caracterizan principalmente por
un gran número de programas activos
simultáneamente que compiten por los recursos del
sistema, como el procesador, la memoria , y los
"dispositivos de E/S". Estos sistemas monitorean el
estado de todos los programas activos y recursos del
sistema.
13. Los sistemas operativos multiusuario
permiten acceder simultáneamente a un
sistema de computadoras a través de dos o
más terminales. Este tipo de sistema
operativo es fundamental en el manejo de
redes de computadoras actualmente.
14. Los sistemas operativos de tiempo compartido tratan de
proporcionar un reparto equitativo de los recursos comunes para
dar la impresión a los usuarios de que poseen una computadora
independiente. En estos sistemas el administrador de memoria
proporciona aislamiento y protección de los programas, ya que
generalmente no tienen necesidad de comunicarse entre ellos. El
control de E/S se encarga de proporcionar o retirar la asignación a
los dispositivos de forma que se preserve la integridad del sistema
y se proporcione servicio a todos los usuarios. El administrador de
archivos proporciona protección y control en el acceso de la
información, dada la posibilidad de concurrencia y conflictos al
tratar de acceder a los archivos.
15. Estos sistemas tienen como objetivo
proporcionar tiempos más rápidos de respuesta,
procesar la información sin tiempos muertos. En
estos sistemas el administrador de memoria es
relativamente menos solicitado debido a que
muchos procesos residen permanentemente en
memoria. El administrador de archivos se
encuentra normalmente en grandes sistemas de
tiempo real y su objetivo principal es manejar la
velocidad de acceso, más que la utilización
eficaz del almacenamiento secundario.
17. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
18. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
19. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
20. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
21. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
22. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
23. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
24. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
25. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
26. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
27. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
28. 1.1.2. Análisis comparativo de Sistemas Operativos Miércoles, 07 de Marzo de 2012
29. Miércoles, 07 de Marzo de 2012 1.1.2. Análisis comparativo de Sistemas Operativos
30. Miércoles, 07 de Marzo de 2012 1.1.2. Análisis comparativo de Sistemas Operativos
31. DEFINICION
Es un lenguaje artificial
para controlar una
maquina o crear
programas mediante
conjunto de instrucciones
y reglas de
sintaxis(coordinar), para
que estos se pongan a
disposición del
programador para que
este pueda comunicarse
con los dispositivos de
hardware y software.
32. Independencia: Los lenguajes deben
ser independientes de la máquina o sea una sentencia
no depende del diseño de hardware de una
computadora en particular.
Corrección: Un programa es correcto si
hace lo que debe hacer tal y como se estableció en
las fases previas a su desarrollo.
Claridad: Es muy importante que el
programa sea lo más claro y legible posible, para
facilitar así su desarrollo y posterior mantenimiento.
Eficiencia: Se trata de que el
programa, además de realizar aquello para lo que fue
creado lo haga gestionando de la mejor forma
posible los recursos que utiliza.
Portabilidad: Un programa es portable
cuando tiene la capacidad de poder ejecutarse en
una plataforma, ya sea hardware o
software, diferente a aquella en la que se elaboró.
33. IMPLEMENTACION
La implementación de un lenguaje es la que
provee una manera de que se ejecute un
programa para una determinada combinación
de software y hardware. Existen básicamente
dos maneras de implementar un lenguaje
34. Compilación Interpretación
Es el proceso que Es una asignación de
significados a las fórmulas
traduce un programa bien formadas de un
escrito en un lenguaje lenguaje formal. Como los
lenguajes formales pueden
de programación a definirse en términos
otro lenguaje de puramente sintácticos, sus
programación, genera fórmulas bien formadas
pueden no ser más que
ndo un programa cadenas de símbolos sin
equivalente que la ningún significado. Una
máquina será capaz interpretación otorga
significado a esas
interpretar. fórmulas.
35. ANTECEDENTES HISTORICOS
Para que la computadora entienda nuestras
instrucciones debe usarse un lenguaje específico
conocido como código máquina.
Los primeros operadores de computadoras decidieron
hacer un traductor para reemplazar los 0 y 1 por
palabras o abstracción de palabras y letras
provenientes del inglés; éste se conoce como lenguaje
ensamblador.
36. La necesidad de recordar secuencias de programación
para las acciones usuales llevó a denominarlas con
nombres fáciles de memorizar y asociar: ADD, SUB,
MUL, CALL, etc. A este conjunto de instrucciones se
le llamó lenguaje ensamblador. Posteriormente
aparecieron diferentes lenguajes de programación,
los cuales reciben su denominación porque tienen una
estructura sintáctica similar a los lenguajes escritos
por los humanos, denominados también lenguajes de
alto nivel.
37. La primera programadora de computadora
conocida fue Ada Lovelace, quien, después
conoció a Charles Babbage, tradujo y amplió una
descripción de su máquina analítica.
38. A finales de 1953, John Backus sometió una
propuesta a sus superiores en IBM para desarrollar
una alternativa más práctica al lenguaje ensamblador
para programar la computadora central IBM 704.
El primer manual para el lenguaje Fortran apareció en
octubre de 1956, con el primer compilador Fortran
entregado en abril de 1957.
En 1960, se creó COBOL, uno de los lenguajes usados
aún en 2010 en informática de gestión.
se crearon los lenguajes de alto nivel, como lo fue
BASIC en las versiones introducidas en los
microordenadores de la década de 1980.
39. FUNCIONES DE LOS LENGUAJES DE PROGRAMACIÓN
“Para que se realize dicho procesamiento de información habra
sido necesario construir un ordenador (hardware), pensar y crear
un programa (software) y ejecutar dicho programa o aplicacion en
el computador.
La ultima de estas fases es la que realiza el usuario, las anteriores
son realizadas por tecnicos que construyen el hardware y por
programadores que desarrollan el software.”
40. Los leguajes de programación han
servido de mucho y mas en la actualidad
para satisfacer necesidades
tecnológicas, por que al paso del tiempo
han evolucionado y con ello las mejoras
son cada vez mas, por que en base estos
leguajes de programación se ha escrito
una infinidad de programas desde el mas
sencillo hasta el mas sofisticado.
41. Java: diseñado por la compañía Sun
Microsystems Inc, con el propósito de
crear un lenguaje que pudiera funcionar
en redes computacionales heterogéneas
( redes de computadoras formadas por
más de un tipo de computadora, ya
sean PC, MAC's, estaciones de trabajo,
etc.) y que fuera independiente de la
plataforma en la que se vaya a ejecutar.
Esto significa que un programa de Java
puede ejecutarse en cualquier máquina o
plataforma.
43. Intérprete: Es un programa que lee línea
a línea un programa escrito en un
lenguaje (código fuente), y lo va
traduciendo a un código intermedio, para
ejecutarlo.
Compilador: Es un programa que lee
totalmente un programa escrito en un
lenguaje (código fuente), y lo traduce a un
programa equivalente en otro lenguaje: el
lenguaje objeto.
44. Los lenguajes de nivel de máquina y los de ensamblador se clasifican
como lenguajes de nivel bajo. Esto se debe a que ambos utilizan
instrucciones que están vinculadas directamente a un tipo de
computadora.
Un lenguaje de nivel alto utiliza instrucciones similares a las de los
lenguajes escritos, como el inglés, y se pueden ejecutar en diversos
tipos de computadoras. FORTRAN, BASIC, Pascal y C++ son
ejemplos de lenguajes de nivel alto.
45. A los programas escritos en un lenguaje de computadora de nivel alto
o bajo se les conoce de manera indistinta como programas fuente o
código fuente.
#include <stdio.h>
#include <conio.h>
void main()
{
printf("Hola mundo!...n");
getch();
}
46. Cuando cada instrucción en un programa fuente de nivel alto se traduce
de manera individual y se ejecuta inmediatamente al momento de la
traducción, el lenguaje de programación utilizado se llama lenguaje
interpretado, y el programa que efectúa la traducción se llama
intérprete.
Cuando todas las instrucciones en un programa fuente de nivel alto se
traducen como una unidad completa antes de que cualquier instrucción
sea ejecutada, al lenguaje de programación utilizado se le llama
lenguaje compilado. En este caso, al programa que efectúa la
traducción se le llama compilador.
47. Puede haber versiones tanto compiladas como interpretadas de un
lenguaje, aunque generalmente una predomina.
Por ejemplo, aunque existen versiones compiladas de BASIC, éste es
predominantemente un lenguaje interpretado.
De la misma forma, aunque existen versiones interpretadas de C++,
éste es básicamente un lenguaje compilado.
48. INTERPRÉTES COMPILADORES
1.- Un intérprete facilita la 1.- Un compilador suele generar
búsqueda de errores, pues la programas más rápidos y
ejecución de un programa puede eficientes, ya que el análisis del
interrumpirse en cualquier lenguaje fuente se hace una sola
momento para estudiar el entorno vez, durante la generación del
(valores de las variables, etc.). programa equivalente. En cambio,
Además, el programa puede un intérprete se ve obligado
modificarse sobre la marcha, sin generalmente a analizar cada
necesidad de volver a comenzar instrucción tantas veces como se
la ejecución. ejecute (incluso miles o millones
de veces).
2.- Un intérprete necesita menos 2.- Un compilador necesita más
memoria que un compilador. memoria que un intérprete.
49. INTERPRÉTES COMPILADORES
3.- Un intérprete permite utilizar 3.- Usualmente, este tipo de
funciones y operadores más instrucciones es imposible tratarlos
potentes, como por ejemplo ejecutar por medio de compiladores. Los
código contenido en una variable en lenguajes que permiten el uso de un
forma de cadenas de caracteres. compilador, prescinden de este tipo
Los lenguajes que incluyen este tipo de operadores.
de operadores, por tanto, exigen un
intérprete.
4.- En el caso del intérprete, es 4.- Se compila una vez, se ejecuta n
necesario disponer de él para veces (Genera un archivo ejecutable
ejecutar el programa. directamente por la computadora).
5.- Permiten una mayor 5.- El compilador tiene una visión
interactividad con el código en global del programa, por lo que la
tiempo de desarrollo. información de mensajes de error es
más detallada.
50. C es un lenguaje sencillo y profundo, pues maneja elementos básicos
presentes en todas las computadoras: caracteres, números y
direcciones.
Suele ser llamado lenguaje de programación de sistemas debido a su
utilidad para escribir compiladores y sistemas operativos, de igual
forma se pueden desarrollar cualquier tipo de aplicación.
51. El hecho de no poseer operaciones de entrada-salida, manejo de
arreglo de caracteres, de asignación de memoria, etc., puede al
principio parecer un grave defecto; sin embargo el hecho de que estas
operaciones se realicen por medio de llamadas a Funciones contenidas
en Librerías externas al lenguaje en sí, es el que confiere al mismo su
alto grado de portabilidad, independizándolo del "Hardware" sobre el
cual corren los programas.
52. El lenguaje de programación en C está compuesto o integrado
por:
Librerías: son grupos de funciones ya determinadas por el
programa, la cual contiene 29 archivos de cabecera
(conio.h, stdio.h, etc.)
Palabras reservadas: que son palabras personales del programa
(char, if, else, int, float, etc.)
53. El lenguaje de programación en C está
compuesto o integrado por:
Funciones hechas por el usuario: son funciones
hechas por el usuario, pero que tiene que declarar
en el programa.
Estructuras de control de flujo: que está
compuesta por ciclos (tales como: for, while, do-
while), decisiones (como if, if – else – if ,
switch), saltos (como goto).
Tipos de datos: Los más usuales son: char, int,
float, double, void, enum, long…
54. La mejor manera de aprender a programar en un
lenguaje es programando con él, mediante editar,
compilar, corregir y ejecutar pequeños programas
descriptivos.
/*Programa hola mundo*/
#include <stdio.h>
#include <conio.h>
void main()
{
printf("Hola mundo!...n");
getch();
}
55. Función main ( ).
La función main, indica donde empieza el programa, es la que ejecuta
el sistema operativo al llamar a un programa C. La función main
siempre va seguida de paréntesis ( ), tanto si tiene argumentos como si
no.
Las llaves { }
El cuerpo principal de un conjunto de sentencias está delimitado por
dos llaves, una inmediatamente después de la declaración main() " { ",
y otra que finaliza el listado " } ".
56. Función printf
Los programas en C se inician de la misma
manera o parten del mismo punto: ya que la
primer sentencia dentro de dicha función, en este
caso printf ("......"). Dicha función sirve para
imprimir en la pantalla lo que solicitamos.
El símbolo n
El símbolo n indica un cambio de línea, que
permite que el cursor avance a la posición extrema
izquierda de la línea siguiente.
57. El símbolo ;
Cada sentencia del programa queda
finalizada por el terminador “;", que indica al
compilador el fin de la misma. Es necesario
pues las sentencias complejas pueden llegar
a tener más de un renglón, y habrá que
avisarle al compilador donde termina.
Comentarios
Para C se toma como comentario todo carácter
interno a los símbolos: /* */. Los comentarios
pueden ocupar uno o más renglones.
59. Un programa puede considerarse como una secuencia lógica de acciones
(instrucciones) que manipulan un conjunto de objetos (datos) para
obtener unos resultados que serán la solución al problema que
resuelve dicho programa.
Todo programa, en general contiene dos bloques bien diferenciados para
la descripción de los dos aspectos anteriormente citados:
Bloque de declaraciones. En él se especifican todos los objetos que
utiliza el programa
(constantes, variables, tablas, registros, archivos, etc.) indicando las
características de estos. Este bloque se encuentra localizado siempre
por delante del comienzo de las acciones.
Bloque de instrucciones. Constituido por el conjunto de operaciones que
se han de realizar para la obtención de los resultados deseados.
60. Las partes principales de un programa están relacionadas con sus dos
bloques ya mencionados. Dentro del bloque de instrucciones podemos
diferenciar tres partes fundamentales, como se muestra en la siguiente
figura:
PROGRAMA
INSTRUCCIONES DECLARIACIONES
ENTRADA DE DATOS
PROCESO O ALGORITMO
SALIDA DE RESULTADOS
61. Entrada de Datos: La constituyen todas las instrucciones que toman los
datos de entrada desde un dispositivo externo y los almacena en la
memoria principal para que puedan ser procesados.
Proceso o algoritmo: Está formado por las instrucciones que modifican los
objetos a partir de su estado inicial (datos de entrada) hasta el estado
final (resultados) dejando los objetos que lo contiene disponibles en la
memoria principal.
Salida de resultados: Conjunto de instrucciones que toman los datos finales
(resultado) de la memoria principal y los envían a los dispositivos
externos.
62. Para un determinado problema se pueden construir diferentes algoritmos de
resolución o programas. La elección del más adecuado se debe basar en
una serie de requisitos de calidad que adquieren gran importancia a la
hora de evaluar el costo de su diseño y mantenimiento.
Las características generales que debe reunir un programa son las
siguientes:
LEGIBILIDAD : Ha de ser claro y sencillo, de tal forma que facilite su
lectura y compresión.
PORTABILIDAD: Su diseño debe permitir la codificación en diferentes
lenguajes de programación, así como su instalación
en diferentes sistemas.
63. MODIFICABILIDAD: Ha de facilitar su mantenimiento, esto es, las
modificaciones y actualizaciones necesarias
para adaptarlo a una nueva situación.
EFICIENCIA : Se deben aprovechar al máximo los recursos de la
computadora, minimizando la memoria utilizada y el tiempo de
proceso o ejecución, siempre que no sea a costa de los
requisitos anteriores.
Metodología De La Programación:
Es el conjunto de métodos y técnicas disciplinadas que ayudan al
desarrollo de unos programas que cumplan los requisitos
anteriormente expuestos.
Los métodos propuestos utilizados, tanto explicita como implícitamente,
son el método de programación modular y el de programación
estructurada.
64. MODULARIDAD: El diseño modular, descendente o mediante
refinamientos sucesivos (top-down, stepwise
refinamente) se basa en la realización de una serie de
descomposiciones sucesivas del algoritmo inicial, que describen el
refinamiento progresivo del repertorio de instrucciones que
van a constituir el programa.
Un programa quedara formado por una serie de
módulos, cada uno de los cuales realiza una parte
concreta de la tarea total.
ESTRUCTURACION: Se basa en el uso exclusivo de las estructuras
secuencia, alternativa e iteración para el control de flujo
de ejecución de las instrucciones. Los
programas así diseñados serán fáciles de
verificar, depurar y mantener.
65. Todo programa en C, desde el más pequeño hasta el más complejo, tiene una
función principal denominada main(). Además, por encima de main() deben
aparecer los prototipos de funciones (y esto implica a los archivos de
cabecera, si se utilizan funciones de librería) y las variables y constantes
globales, si las hay. Por debajo de main() encontraremos el código del resto
de funciones.
Por lo tanto, la estructura habitual de nuestros programas en C debería ser
esta:
/* Comentario inicial: nombre del programa, del programador, fecha, etc */
/* Archivos de cabecera (prototipos de funciones de librería) */
66. #include <archivo_cabecera.h>
#include <archivo_cabecera.h>
/* Prototipos de funciones escritas por nosotros */
float función1 (argumentos);
float función2 (argumentos);
/* Variables y constantes globales */
int variable_global;
const char constante_global;
#define PI 3.14
/* Algoritmo principal */ int main(void)
67. {
/* Variables locales del algoritmo principal */
int a, b;
float x, y;
...
...
/* Instrucciones del algoritmo principal */
...
función1(argumentos);
...
función2(argumentos);
...
return 0;
}
69. Se denominan DATOS a las características
propias de cualquier identidad. Por ejemplo, la
edad y el domicilio de una persona forman parte
de sus datos.
Los programas procesan datos a fin de obtener
resultados o información útiles.
Cada variable, constante o expresión lleva
asociado un tipo de datos que determina el
conjunto de valores que pueden tomar.
70. Son objetos cuyo valor permanece invariablemente a lo largo de la
ejecución de un programa. Una constante es la determinación de
un valor concreto, de tal forma que se utiliza su nombre cada vez
que se necesita referenciarlo.
¿QUÉ ES UNA VARIABLE?
Son los objetos cuyo valor puede ser modificado a lo largo de la
ejecución de un programa.
71. Es un subconjunto de los números enteros cuyo rango o tamaño dependen del lenguaje
y computadora utilizada.
Los datos de este tipo se expresan mediante una cadena de dígitos que pueden ir
precedidos de signo + o -.
EJEMPLOS: 1987 -12 +3300.
Tipo Numérico Real
Es un subconjunto de los números reales limitado no solo en cuanto a cuyo tamaño, sino
también en cuanto a la precisión.
Se expresan de dos maneras diferentes denominadas notación de punto fijo y notación
exponencial. En la primera, un valor consiste en una cadena de dígitos que pueden ir
precedidos de signo + o – y un punto decimal intermedio.
EJEMPLOS: 97.84 -12.00 +0.5
72. Es un conjunto formado por todos los caracteres o
símbolos de que dispone la computadora. Se
expresan mediante el carácter colocado entre
comillas o apostrofes.
El conjunto de los caracteres está formado por:
Los caracteres alfabéticos mayúsculas; “A”, “B”, “C”, “D”, ... , “Z”.
Los caracteres alfabéticos minúsculas; “a”, “b”, “c”, “d”, ... , “z”.
Los caracteres dígitos; “1”, “2”, “3”, “4”, ... , “9”.
Los caracteres especiales; “ ”, “+”, “-”, “*”, ... , “¿”.
EJEMPLOS: “ALCALA” “28035”
73. TIPO DE DATOS TAMAÑO EN BITS
El tamaño de un int es de 32 bits
El tamaño de un float es de 32 bits
El tamaño de un char es de 8 bits
74.
75.
76.
77. http://zarza.usal.es/~fgarcia/doc/tuto2/II_2.htm
http://alex-sc-coral.blogspot.com/2009/02/tipos-
de-datos-y-modificadores_03.html
www.paginasprodigy.com.mx/robertooso
Libro “Metodologia de la programación”
Autor Luis Joyanes Aguilar
Ed. McGrawHill