org/wiki/Mantenimiento_de_software) Maintenance: In software engineering, software maintenance is the modification of a software product after delivery...
== Wiki Español - English ] Lenguaje de programación: Es un lenguaje diseñado para describir el conjunto de acciones consecutivas que un equipo debe ejecutar. Es un modo práctico para que los seres humanos puedan dar instrucciones a un equipo. Un lenguaje de programación es aquella estructura que, con una cierta base sintáctica y semántica, imparte distintas instrucciones a un programa de computadora. (Definición de lenguaje de programación - Qué es, Significado y Concepto http://definicion.de/lenguaje-de-programacion/#ixzz3oIT178GI) Programming Language: A language designed to describe a set of consecutive actions that a computer must run. It is a practical way for humans to give instructions to a computer. a programming language is one structure, with some syntactic and semantic basis, gives different instructions to a computer program. Algoritmo: Se puede definir como una secuencia de instrucciones que representan un modelo de solución para determinado tipo de problemas. O bien como un conjunto de instrucciones que realizadas en orden conducen a obtener la solución de un problema. Para realizar un programa es conveniente el diseño o definición previa del algoritmo. El diseño de algoritmos requiere creatividad y conocimientos profundos de la técnica de programación. Luis Joyanes, programador experto y autor de muchos libros acerca de lógica y programación nos dice “en la ciencia de la computación y de la programación, los algoritmos son más importantes que los lenguajes de programación o las computadoras. Un lenguaje de programación es solo un medio para expresar un algoritmo y una computadora es solo un procesador para ejecutarlo”. Los algoritmos son independientes de los lenguajes de programación. En cada problema el algoritmo puede escribirse y luego ejecutarse en un lenguaje diferente de programación. El algoritmo es la infraestructura de cualquier solución, escrita luego en cualquier lenguaje de programación. (http://ing.unne.edu.ar/pub/informatica/Alg_diag.pdf) Algorithm: can be defined as a sequence of instructions that represent a model solution for certain types of problems. Or as a set of instructions carried out in order to obtain the solution drive problem. To perform a program is suitable design or previous definition of the algorithm. Algorithm design requires creativity and deep knowledge of programming technique. Luis Joyanes, expert and author of many books about programming and programming logic tells us "in computer science and programming, algorithms are more important than the programming languages or computers. A programming language is only a means to express an algorithm and a computer is just a processor to run it. The algorithms are independent of programming languages. In each problem the algorithm can be written and then run on a different programming language. The algorithm is the infrastructure of any solution, then written in any programming language. Lenguaje de máquina: Es el único lenguaje que puede ejecutar una computadora. El lenguaje de máquina es un código que es interpretado directamente por el microprocesador. El lenguaje está compuesto por un conjunto de instrucciones ejecutadas en secuencia (con eventuales cambios de flujo causados por el propio programa o eventos externos) que representan acciones que la máquina podrá tomar. Un lenguaje máquina es específico de cada arquitectura de computadora. Todo código fuente en última instancia debe llevarse a un lenguaje máquina mediante el proceso de compilación o interpretación para que la computadora pueda ejecutarlo. (http://www.alegsa.com.ar/Dic/lenguaje%20maquina.php#sthash.8mVWxPdM.dpuf) Machine Language: It is the only language that can run a computer. Machine language is a code that is interpreted directly by the microprocessor. The language consists of a set of instructions executed in sequence (with any changes in flow caused by the program itself or external events) that represent actions that the machine can take. Machine language is specific to each computer architecture. All source code must ultimately be a machine language through the process of compilation or interpretation that the computer can run it. Lenguaje de bajo nivel (ensamblador): Los lenguajes de bajo nivel, también llamados lenguajes ensambladores, permiten al programador escribir instrucciones de un programa usando abreviaturas del inglés, también llamadas palabras nemotécnicas, tales como: ADD, DIV, SUB, etc. Un programa escrito en un lenguaje ensamblador tiene el inconveniente de que no es comprensible para la computadora, ya que, no está compuesto por ceros y unos. Para traducir las instrucciones de un programa escrito en un lenguaje ensamblador a instrucciones de un lenguaje máquina hay que utilizar un programa llamado ensamblador. (http://www.carlospes.com/minidiccionario/lenguaje_de_bajo_nivel.php) Low level language (assembler): The low-level languages, also called assembly languages, allows the programmer to write a program using instructions English abbreviations, also called mnemonic words, such as ADD, DIV, SUB, etc. A program written in assembly language has the disadvantage that it is not understandable to the computer, since it is not composed of zeros and ones. To translate the instructions of a program written in assembly language into machine language instructions must use a program called assembler. Lenguaje de alto nivel: Un lenguaje de alto nivel permite al programador escribir las instrucciones de un programa utilizando palabras o expresiones sintácticas muy similares al inglés. Por ejemplo, en C se pueden usar palabras tales como: case, if, for, while, etc. para construir con ellas instrucciones como: if( numero > 0 ) printf( "El número es positivo" ) que traducido al castellano viene a decir que: si número es mayor que cero, entonces, escribir por pantalla el mensaje: "El número es positivo". Ésta es la razón por la que a estos lenguajes se les considera de alto nivel, porque se pueden utilizar palabras de muy fácil comprensión para el programador. En contraposición, los lenguajes de bajo nivel son aquellos que están más cerca del "entendimiento" de la máquina. Otros lenguajes de alto nivel son: Ada, BASIC, COBOL, FORTRAN, Pascal, etc. Otra característica importante de los lenguajes de alto nivel es que, para la mayoría de las instrucciones de estos lenguajes, se necesitarían varias instrucciones en un lenguaje ensamblador para indicar lo mismo. De igual forma que, la mayoría de las instrucciones de un lenguaje ensamblador, también agrupa a varias instrucciones de un lenguaje máquina. (http://www.carlospes.com/minidiccionario/lenguaje_de_alto_nivel.php) High-level language: A high-level language allows the programmer to write instructions a program using words or expressions syntax very similar to English. For example, in C you can use words such as case, if, for, while, etc. to build them you instructions like: If (number> 0) printf ("The number is positive") Which translated into Castilian is to say that: if the number is greater than zero, then write on the screen the message: "The number is positive." This is the reason why these languages are considered high level because words can be used very easily understood by the programmer. In contrast, low-level languages are those who are closer to the "understanding" of the machine. Other high-level languages are: Ada, BASIC, COBOL, FORTRAN, Pascal, etc. Another important feature of the high-level languages is that, for most of the instructions in these languages, it would take several instructions in assembly language to indicate the same. Just as most of the instructions in an assembly language, also brings together a number of machine language instructions. Algoritmos cualitativos: Un algoritmo es cualitativo cuando en sus pasos o instrucciones no están involucrados cálculos numéricos. Las instrucciones para armar un aeromodelo, para desarrollar una actividad física o encontrar un tesoro, son ejemplos de algoritmos cualitativos. (http://es.slideshare.net/jdazas/algoritmo-cualitativos) Qualitative Algorithms: An algorithm is qualitative when their steps or instructions are not involved numerical calculations. The instructions to build a model aircraft to develop a physical activity or find a treasure, are examples of qualitative algorithms. Algoritmos Cuantitativos: Algoritmos que permiten crear el diseño de los programas necesarios para el funcionamiento del computador. Estos algoritmos son representados por pasos o instrucciones que involucran cálculos numéricos en busca de un resultado satisfactorio, como por ejemplo los pasos que se deben seguir para la resolución de la ecuación cuadrática. (http://es.calameo.com/read/0025477318a412d351788) Quantitative Algorithms: Algorithms for creating the design of the programs needed to operate the computer. These algorithms are represented by steps or instructions that involve numerical calculations to find a satisfactory outcome, such as the steps to follow to solve the quadratic equation. Lenguajes algorítmicos gráficos: Este tipo de lenguaje tiende a representar a los algoritmos de una forma gráfica. De esta manera se hace más fácil la representación de cada uno de los procesos que debe llevar a cabo una computadora para resolver problema. Sin lugar a duda el lenguaje algorítmico gráfico más común son los Diagramas de Flujo. Éstos pueden definirse como esquemas usados para representar gráficamente un proceso. (https://akgm92.wordpress.com/2008/06/18/lenguajes-algoritmicos/) Algorithmic languages Graphics: This type of language tends to represent algorithms graphically. In this way it becomes easier the representation of each of the processes that should perform a computer to solve. Without a doubt the most common graphical algorithmic language are the flowcharts. These can be defined and used to plot a process schemes. Lenguaje no gráfico: Los lenguajes algorítmicos no gráficos generalmente son utilizados para representar procesos informáticos ya más específicos. Dicho de otra forma, para representar la codificación de un programa sin la necesidad de conocer un lenguaje de programación específico. (https://akgm92.wordpress.com/2008/06/18/lenguajes-algoritmicos/) No graphic language: Non-graphical algorithmic languages are generally used to represent computer processes and more specific. In other words, to represent the encoding of a program without the need to learn a specific programming language. Pseudocódigo: Sin lugar a duda, el pseudocodigo es el lenguaje algorítmico no grafico más utilizado hasta la fecha. Cualquier persona que se diga que tiene experiencia como programador, alguna vez se ha visto en la necesidad de representar sus programas en pseudocodigo. El pseudocodigo significa que vas a convertir tu algoritmo en un lenguaje escrito que se entienda sin utilizar la sintaxis y la gramática de un lenguaje de programación en específico. Existen diferencias entre las normas de cómo debe realizarse correctamente un pseudocodigo debido a que, como no es necesariamente un lenguaje de programación, debe adaptarse a las necesidades del algoritmo en sí; por eso varios autores definen su propia sintaxis y gramática de forma diferente. (https://akgm92.wordpress.com/2008/06/18/lenguajes-algoritmicos/9) Pseudocode: Without a doubt, the pseudocode is no more graphic algorithmic language used to date. Anyone who says you have programming experience, you have ever felt the need to represent their programs in pseudocode. The pseudocode means you'll turn your algorithm in a written language that is understood without using the syntax and grammar of a programming language specific. There are differences between the rules of how to properly carried pseudocode because, as is not necessarily a programming language should be adapted to the needs of the algorithm itself; why several authors define their own syntax and grammar differently. Definición del problema: La Real Academia Española (rae) define problema de latín problema como una cuestión a aclarar, proposición o dificultad de solución dudosa, conjunto de hechos o circunstancias que dificultan la consecución del algún fin, planteamiento de una situación cuya respuesta desconocida debe obtenerse a través de métodos científicos. En el ámbito informático, la definición del problema, es una cuestión que se plantea para determinar el método que hay que seguir para obtener un resultado.(http://51informatica.blogspot.com.co/2012/12/bloque-i-disenas-y-elaboras-algoritmos.html) Defining the problem: The Royal Spanish Academy (RAE) defines problem of Latin problem as an issue to clarify, or difficulty of dubious proposition solution set of facts or circumstances that hinder the achievement of some purpose, approach a situation whose answer unknown you must be obtained through scientific methods. In the computer field, the problem definition, is a question that arises in determining the method to be followed to obtain a result. Análisis del problema: en el desarrollo de un software el análisis del problema es donde se contempla lo que debe hacer el programa y el resultado o solución deseada. Dado que se busca una solución por computadora, se precisan especificaciones detalladas de entrada y salida, para esto es conveniente responder a preguntas como: ¿Qué entradas se requieren?, ¿Cuál es la salida deseada?, ¿Qué método produce la salida deseada? (https://sites.google.com/site/474introduccionalaprogramacion/resolucion-de-problemas-con-c/analisis-del-problema-1) Analysis of the problem: the development of a software problem analysis is where it contemplates what to do the program and desired outcome or solution. Since computer solution is sought detailed input and output specifications are required, it is desirable to answer questions like: What inputs are required? What is the desired output? What method produces the desired output? Diseño de algoritmos: En ingeniería del software, el diseño de algoritmos es un método específico para poder crear un modelo matemático ajustado a un problema específico para resolverlo. El diseño de algoritmos es una teoría de la Investigación de operaciones. (https://es.wikipedia.org/wiki/Dise%C3%B1o_de_algoritmos) Design of algorithms: In software engineering, algorithm design is a specific method to create a mathematical model fitted to a specific problem to solve. Algorithm design is a theory of Operations Research. Codificación: En el desarrollo del software es la etapa en la que se tienen que traducir los algoritmos diseñados a un lenguaje de programación específico; es decir, las acciones definidas en los algoritmos hay que convertirlas a instrucciones. Para codificar un algoritmo hay que conocer la sintaxis del lenguaje al que se va a traducir. (https://prezi.com/aykxapiqz8wz/codificacion-ingenieria-de-software-iii/) Encryption: In software development is the stage where you have to translate the algorithms designed to a specific programming language; that is, the actions defined in the algorithms have to convert them instructions. To encode an algorithm must know the syntax of the language that is to be translated. Compilación y ejecución: Un compilador es un Programa encargado de traducir los programas fuentes escritos en un lenguaje de alto nivel a lenguaje máquina y de comprobar que las llamadas a las funciones de librería se realizan correctamente. Una vez que tenemos el programa en lenguaje máquina pasamos a la ejecución, que es el proceso mediante el cual una computadora lleva a cabo las instrucciones de un programa informático. (http://www.uhu.es/04004/material/Transparencias3.pdf) Compiling and running: A compiler is a program in charge of translating source programs written in high-level language into machine language and ensure that calls to library functions are performed correctly. Once you have the program in machine language we had to implementation, which is the process by which a computer performs the instructions of a computer program. Prueba y Depuración: En el software es esencial la confirmación en cada paso, este debe funcionar correctamente, la prueba de los programas sigue siendo la técnica de confirmación de sistemas más utilizada, es un proceso continuo en cada etapa del ciclo. La prueba de los programas es parte del proceso de confirmación que suele realizarse durante la aplicación, al dar por terminada cada etapa y durante su realización, de igual modo que cuando se ha terminado el software, esta sería ya la prueba general. Este tipo de confirmación consiste en ejercitar el programa simulando datos parecidos a los reales que serán ejecutados por el programa, esto sirve para que, al observar los resultados, se pueda deducir con facilidad la existencia de errores, si los hay, o posibles carencias del programa, todo a partir del resultado obtenido. Por otro lado, no debemos confundir las pruebas con la depuración de programas ya que no son lo mismo a pesar de estar muy relacionadas. Estos son dos procesos distintos. La prueba sería el proceso para establecer la existencia de errores en el programa si los hay mientras que, por contra, la depuración sería el proceso de localizar dónde se producen estos errores y así poder corregir el código que no sea correcto. Aclarada la diferencia de procedimiento de ambas, es importante entender que la prueba nunca demuestra que un programa es correcto o no. Siempre es posible que existan errores aún después de haber hecho la prueba, ya que esta sólo puede demostrar la presencia de errores en un programa, no su ausencia, cosa totalmente distinta y básica a tener en cuenta. La prueba se considera acertada cuando establece la presencia de uno o más errores en el software para luego poder ser localizados y solventados. (http://okhosting.com/blog/prueba-y-depuracion-en-el-software/) Testing and Debugging: In the software confirmation at each step is essential, it must function properly, the test program remains the confirmation technique most used systems is a continuous process in each stage. The test program is part of the confirmation process that is usually done in the application, to terminate each stage and during implementation, just as when the software is finished, this would already be the general test. This type of confirmation is to exercise the program simulating data similar to real to be executed by the program, this serves so that when looking at the results, they can easily deduce the existence of errors, if any, potential shortages of program, especially from the result. On the other hand, we must not confuse testing and debugging programs that are not the same despite being closely related. These are two different processes. The test would be the process for establishing the existence of errors in the program if any while, by contrast, the purification process would identify where these errors occur so you can fix the code that is not correct. Unlike clarified the procedure for both is important to understand that the test ever shows that a program is correct or not. It is always possible that errors even after having done the test, since this can only demonstrate the presence of bugs in a program, not its absence, something totally different and basic to consider. The test is considered successful when it establishes the presence of one or more errors in the software can then be located and solved. Documentación: La documentación para desarrolladores es aquélla que se utiliza para el propio desarrollo del producto y, sobre todo, para su mantenimiento futuro. Se documenta para comunicar estructura y comportamiento del sistema o de sus partes, para visualizar y controlar la arquitectura del sistema, para comprender mejor el mismo y para controlar el riesgo, entre otras cosas. Obviamente, cuanto más complejo es el sistema, más importante es la documentación. (http://materias.fi.uba.ar/7507/content/20101/lecturas/documentacion_pruebas.pdf) Documentation: The documentation for developers is the one used for the development of the product itself and, above all, for future maintenance. It is documented to communicate structure and behavior of the system or part thereof, to view and control the system architecture to better understand it and to control the risk, among other things. Obviously, the more complex the system, the more important is documentation. Mantenimiento: En ingeniería del software, el mantenimiento de software es la modificación de un producto de software después de la entrega, para corregir errores, mejorar el rendimiento, u otros atributos. El mantenimiento del software es una de las actividades más comunes en la ingeniería de software. El mantenimiento de software es también una de las fases en el ciclo de vida de desarrollo de sistemas (SDLC, sigla en inglés de system development life cycle), que se aplica al desarrollo de software. La fase de mantenimiento es la fase que viene después del despliegue (implementación) del software en el campo. Una percepción común del mantenimiento es que se trata meramente de la corrección de defectos. Sin embargo, un estudio indicó que la mayoría, más del 80%, del esfuerzo de mantenimiento es usado para acciones no correctivas (Pigosky 1997). Esta percepción es perpetuada por usuarios enviando informes de problemas que en realidad son mejoras de funcionalidad al sistema. (https://es.wikipedia.org/wiki/Mantenimiento_de_software) Maintenance: In software engineering, software maintenance is the modification of a software product after delivery to correct errors, improve performance, or other atributos.1 Software maintenance is one of the most common activities software engineering. Software maintenance is also one of the stages in the life cycle of systems development (SDLC stands for system development life cycle), which applies to software development. The maintenance phase is the phase that comes after deployment (implementation) of software in the field. A common perception is that maintenance is merely correcting defects. However, a study indicated that the majority, more than 80%, the maintenance effort is used to no corrective action (Pigosky 1997). This perception is perpetuated by users submitting problem reports that are actually functional enhancements to the system. Tipos de datos: En lenguajes de programación un tipo de dato es un atributo de una parte de los datos que indican al ordenador (y/o al programador) algo sobre la clase de datos sobre los que se va a procesar. El primer objetivo de un programa informático es el manejo de datos. Un dato es toda aquella información que se puede tratar en un programa informático. Existen unos datos de entrada y unos datos de salida. Los datos de entrada se manipulan en el programa produciendo unos datos de salida. Un dato dentro de un programa se caracteriza por llevar asociado un identificador, un tipo y un valor. Existen datos de : Tipo entero: Representa números enteros con o sin signo, que estarán compuestos por los dígitos del 0 al 9, pudiendo ser precedidos por los signos + o -. Tipo real: Se emplean para representar números reales (con decimales). Tipo carácter: Este tipo de datos se emplea para representar un carácter perteneciente a un determinado código utilizado por el ordenador (normalmente el código ASCII). Tipo cadena de caracteres: Una cadena de caracteres es un número de caracteres consecutivos (incluso ninguno) encerrado entre unos delimitadores determinados, que en el lenguaje C son las comillas dobles. (http://recursostic.educacion.es/observatorio/web/en/software/programacion/972-tipos-de-datos, http://es.slideshare.net/SuperFonso/tipos-de-datos-en-programacion?related=1 ) Data types: In programming languages a data type is an attribute of a part of the data indicating the computer (and / or the programmer) something about the kind of data that will be processed. The first objective of a computer program is handling data. One thing is all information that can be treated in a computer program. There are some input and output data. The input data are handled in the program producing output data. A data within a program is characterized by be associated with an identifier, a type and a value. Data exists: Integer Type: Integers is signed or unsigned, which shall consist of the digits 0 through 9 and may be preceded by + or - signs. Real Type: Used to represent real numbers (in decimal). Character type: This data type is used to represent a character belonging to a particular code used by the computer (usually the ASCII code). Type String: A string is a number of consecutive characters (including none) enclosed in a certain delimiters, in the C language are double quotes. Expresiones: Una expresión es una secuencia de uno o más operandos y cero o más operadores que se pueden evaluar como un valor, objeto, método o espacio de nombres único. Las expresiones pueden constar de un valor literal, una invocación de método, un operador y sus operandos o un nombre simple. Los nombres simples pueden ser el nombre de una variable, miembro de tipo, parámetro de método, espacio de nombres o tipo. Las expresiones pueden utilizar operadores que, a su vez, utilizan otras expresiones como parámetros o llamadas a métodos cuyos parámetros son, a su vez, otras llamadas a métodos, de modo que pueden variar de simples a muy complejas. (https://msdn.microsoft.com/es-es/library/ms173144.aspx) Expression: An expression is a sequence of one or more operands and zero or more operators that can be evaluated to a single value, object, method, or namespace. Expressions can consist of a literal value, a method invocation, an operator and its operands, or a simple name. Simple names can be the name of a variable, type member, method parameter, namespace or type. Expressions can use operators that in turn use other expressions as parameters, or method calls whose parameters are in turn other method calls, so expressions can range from simple to very complex. Operadores y Operandos: En los lenguajes de programación de computadora, las definiciones de operador y operando son casi las mismas que las de matemáticas donde un operando es una de las entradas (argumentos o variables) de un operador. Por ejemplo, en " " es el operador, " " y " " son los operandos Adicionalmente, en lenguaje máquina, un operando es un valor (un argumento) con el cual la instrucción, nombrada por un mnemónico, opera. El operando puede ser un registro, una dirección de memoria, una constante literal, o una etiqueta. Un ejemplo simple en la arquitectura PC es MOV DS, AX donde el valor en el operando del registro AX debe ser movido al registro DS. Dependiendo de la instrucción, puede haber cero, uno, dos o más operandos. (https://es.wikipedia.org/wiki/Operando, http://www.desarrolloweb.com/articulos/2165.php) Operators and operands: In computer programming languages, the definitions of operator and operand are almost the same as those of mathematics where an operand is one of the inputs (arguments or variables) of an operator. For example, in 3 + 6 = 9 "+" It is the operator, "3" and "6" are the operands Additionally, machine language, an operand is a value (an argument) with which the instruction, named by mnemonic, operates. The operand may be a register, a memory address, a literal constant, or a label. A simple example is the PC architecture MOV DS, AX where the value in the AX register operand must be moved to the DS register. Depending on the instruction, may be zero, one, two or more operands. Identificadores (variables y constantes): los datos a procesar por una computadora, ya sean simples o estructurados, deben almacenarse en casillas o celdas de memoria para su posterior utilización. Estas casillas o celdas de memoria (constantes o variables) tienen un nombre que permite su identificación. Las constantes son datos que no cambian durante la ejecución de un programa. Las variables son objetos que pueden cambiar su valor durante la ejecución de un programa. (http://es.slideshare.net/JoseluisCruzRamirez/tipos-de-datos-identificadores-variables-y-constantes-97-2003) Identifiers (variables and constants): data to be processed by a computer, whether simple or structured, or boxes should be stored in memory cells for later use. These cells or memory cells (constant or variable) have a name that allows identification. Constants are data that do not change during program execution. Variables are objects that can change its value during the execution of a program. Técnicas de diseño top down y bottom up: Son estrategias de procesamiento de información características de las ciencias de información, especialmente relativo al software. En el modelo top-down se formula un resumen del sistema, sin especificar detalles. Cada parte del sistema se refina diseñando con mayor detalle. Cada parte nueva es entonces redefinida, cada vez con mayor detalle, hasta que la especificación completa es lo suficientemente detallada para validar el modelo. En el modelo Bottom-up hace énfasis en la programación y pruebas tempranas, que pueden comenzar tan pronto se ha especificado el primer módulo. Este enfoque tiene el riesgo de programar cosas sin saber cómo se van a conectar con el resto del sistema, y esta conexión puede no ser tan fácil como se creyó al comienzo. La reutilización del código es uno de los mayores beneficios de este enfoque. (http://es.slideshare.net/rinappend/top-down-y-bottom-up?qid=6621d0ec-73e5-4de9-9232-2dd1f263338a&v=default&b=&from_search=1) Technical design top down and bottom up: They are information processing strategies characteristics of sciences of information, especially on the software. In the top-down model of the system is a summary formula, without specifying details. Each part of the system is refined designing more detail. Each new part is then redefined, with increasing detail until the full specification is detailed enough to validate the model. In the bottom-up model emphasizes programming and early testing, which can begin as early specified the first module. This approach has the risk of schedule things without knowing how they will connect with the rest of the system, and this connection may not be as easy as it was thought at the beginning. Code reuse is one of the biggest benefits of this approach. Dispositivos de entrada: Una entrada es, en el campo de la informática, una serie de datos que es recibida por un determinado sistema para su posterior procesamiento. Este concepto siempre aparece vinculado con la salida, que supone la presentación de la información para que el usuario haga uso de ésta según lo necesite. Los dispositivos de entrada son aquellos equipos y componentes que permiten ingresar información a la unidad de procesamiento; algunos ejemplos conocidos por todos son el teclado, el mouse (también llamado ratón), el escáner, la cámara web (webcam), el lápiz óptico y el micrófono; la forma en la que el usuario interactúa con ellos es muy variada y tiene, en cada caso, un propósito diferente, que puede ser la digitalización de un texto o de una imagen, la captura de una secuencia de vídeo o la grabación de una canción, entre tantas otras posibilidades. (http://definicion.de/dispositivos-de-entrada/) Input devices: An entry is in the field of information technology, a series of data that is received by a system for further processing. This concept always appears linked to the exit, involving the submission of information for the user to use it as needed. Input devices are those computers and components that allow you to enter information to the processing unit; Some known examples are all keyboard, mouse (also called mouse), scanner, web camera (webcam), the stylus and microphone; how the user interacts with them is varied and has, in each case, a different purpose, which can be scanning a text or an image, capturing a video stream or recording a song, among many other possibilities. Dispositivos de salida: Dispositivo, del latín dispositus (“dispuesto”), es una máquina o sistema que cumple con determinadas acciones; es decir, está “dispuesto” para desarrollar determinadas acciones. Salida, por otra parte, es la acción y efecto de salir o salirse. Este verbo refiere a partir de un lugar hacia otro, pasar de dentro a fuera o librarse de alguna molestia. Estas definiciones ayudan a entender el concepto de dispositivo de salida, una noción que se utiliza en la informática. Lo primero que hay que tener en cuenta es que la entrada/salida está vinculada a las interfaces que usan las unidades de un sistema de información para establecer una comunicación: la entrada es la señal recibida por la unidad y la salida es la señal que envía. Un dispositivo de salida, por lo tanto, es aquél que emite una señal con información. En este sentido podemos mencionar la impresora (que recibe información de una computadora y produce una salida impresa en papel), el monitor (exhibe los datos en la pantalla), los auriculares (emite sonidos para que sean escuchados por una persona) y el altavoz (reproduce sonidos al ambiente). (http://definicion.de/dispositivos-de-salida/) Output devices: device, Latin Dispositius ("ready"), is a machine or system meets certain actions; ie it is "willing" to develop specific actions. Output, moreover, is the action and effect of exit or exit. This verb means from one place to another, moving from the inside out or get rid of some discomfort. These definitions help to understand the concept of output device, a notion that is used in computing. The first thing to consider is that the entry / exit is linked to the interfaces using the units of an information system for communication: the input is the signal received by the unit and the output is the signal sent. An output device, therefore, is one that emits a signal with information. In this regard we can mention the printer (which receives information from a computer and produces a printout on paper), the monitor (display data on the screen), headphones (makes sounds to be heard by a person) and speaker (plays sounds to the environment). Unidad central de procesamiento (c.p.u): La Unidad Central de Procesamiento (del inglés: Central Processing Unit, CPU) o procesador, es el componente principal del ordenador y otros dispositivos programables, que interpreta las instrucciones contenidas en los programas y procesa los datos. Las CPU proporcionan la característica fundamental del ordenador digital (la programabilidad) y son uno de los componentes necesarios encontrados en los ordenadores de cualquier tiempo, junto con la memoria principal y los dispositivos de entrada/salida. Se conoce como microprocesador el CPU que es manufacturado con circuitos integrados. Desde mediados de los años 1970, los microprocesadores de un solo chip han reemplazado casi totalmente todos los tipos de CPU y hoy en día, el término "CPU" es aplicado usualmente a todos los microprocesadores. La expresión "unidad central de proceso" es, en términos generales, un dispositivo lógico que pueden ejecutar complejos programas de ordenador. Esta amplia definición puede fácilmente ser aplicada a muchos de los primeros ordenadores que existieron mucho antes que el término "CPU" estuviera en amplio uso. Sin embargo, el término en sí mismo y su acrónimo han estado en uso en la industria de la Informática por lo menos desde el principio de los años 60. (http://www.eduteka.org/proyectos.php/1/6885) Central processing unit (CPU): Central Processing Unit (English: Central Processing Unit, CPU) or processor is the main component of computer and other programmable devices, which interprets the instructions contained in the programs and processes data. CPUs provide the fundamental characteristic of the digital computer (programmability) and are one of the necessary components found in computers of any era, along with main memory and input / output. It is known as the CPU chip is manufactured using integrated circuits. Since the mid-1970s, single-chip microprocessors have almost totally replaced all types of CPU and today the term "CPU" is usually applied to all microprocessors. The term "central processing unit" is, in general terms, a logic device that can run complex computer programs. This broad definition can easily be applied to many early computers that existed long before the term "CPU" ever came into widespread use. However, the term itself and its initialism have been in use in the computer industry at least since the early 60s. Unidad de control: La unidad de control es el componente del procesador que dirige y coordina la mayoría de las operaciones en la computadora. La unidad de control tiene un rol mucho muy parecido al que tendría un oficial de tránsito vehicular ya que está se encarga de interpretar cada una de las instrucciones generadas por un programa y después inicia las acciones apropiadas para llevar a cabo las instrucciones. Los tipos de componentes internos que la unidad de control dirige incluyen la unidad lógico y aritmética, los registros, y los buses. (http://cca.org.mx/cca/cursos/cucfc/modulo2/tema2-02.html) Control unit: The control unit processor is the component that manages and coordinates most computer operations. The control unit has a lot of very similar role to that officer would vehicular traffic as it is responsible for interpreting each of the instructions generated by a program and then initiates appropriate to carry out the instructions shares. The types of components inside the control unit directs include arithmetic and logic unit, registers, and buses. Unidad aritmético – lógica: Esta unidad realiza cálculos (suma, resta, multiplicación y división) y operaciones lógicas (comparaciones). Transfiere los datos entre las posiciones de almacenamiento. Tiene un registro muy importante conocido como: Acumulador ACC Al realizar operaciones aritméticas y lógicas, la UAL mueve datos entre ella y el almacenamiento. Los datos usados en el procesamiento se transfieren de su posición en el almacenamiento a la UAL. Los datos se manipulan de acuerdo con las instrucciones del programa y regresan al almacenamiento. Debido a que el procesamiento no puede efectuarse en el área de almacenamiento, los datos deben transferirse a la UAL. Para terminar una operación puede suceder que los datos pasen de la UAL al área de almacenamiento varias veces. (http://www.internetglosario.com/805/UnidadAritmeticoLogica.html) Unit arithmetic - logic: This unit performs calculations (addition, subtraction, multiplication and division) and logical operations (comparisons). Transfers data between storage positions. Has a very important record known as accumulator ACC When performing arithmetic and logic operations, UAL moves data between it and the storage. The data used in processing are transferred from their storage position to UAL. The data is manipulated according to the instructions of the program and return to storage. Because processing may not be performed in the storage area, the data must be transferred to UAL. To end an operation it may happen that data passes UAL storage area several times. Memoria central (interna): La memoria central está formada por bloques de circuitos integrados o chips capaces de almacenar, retener o "memorizar" información digital, es decir, valores binarios; a dichos bloques tiene acceso el microprocesador de la computadora. En las computadoras son utilizados dos tipos de memorias centrales: ROM y RAM. (http://infotibidenis.blogspot.com.co/2009/10/memoria-central.html) Main memory (internal): The main memory consists of blocks of integrated circuits or chips capable of storing, holding or "memorize" digital information, binary values; said blocks access to the microprocessor of the computer. In computers they are used two types of core memories: ROM and RAM. RAM o memoria de acceso aleatorio: Es la memoria del usuario que contiene de forma temporal el programa, los datos y los resultados que están siendo usados por el usuario del computador. En general es volátil, pierde su contenido cuando se apaga el computador, es decir que mantiene los datos y resultados en tanto el bloque reciba alimentación eléctrica. Tanto la RAM como la ROM son circuitos integrados, llamados comúnmente chips. El contenido de las memorias no es otra cosa que dígitos binarios o bits que se corresponden con dos estados lógicos: el 0sin carga eléctrica y el 1 con carga eléctrica. (http://infotibidenis.blogspot.com.co/2009/10/memoria-central.html) RAM or Random Access Memory: The user memory containing the program temporarily, data and results by the user of the computer being used. In general it is volatile, it loses its contents when the computer is turned off, ie maintaining the data and results while under power block. Both RAM and ROM are integrated circuits, commonly called chips. The content of the reports is nothing but binary digits or bits that correspond to two logical states: the 0sin electric charge and electrically charged 1. Memoria ROM: ROM o memoria de sólo lectura (Read Only Memory) - viene grabada de fábrica con una serie de programas. El software de la ROM se divide en dos partes: rutina de arranque o POST (realiza el chequeo de los componentes de la computadora) y rutina BIOS (permite la activación de los periféricos de entrada/salida). (http://infotibidenis.blogspot.com.co/2009/10/memoria-central.html) Memory ROM: ROM or read only memory (Read Only Memory) - factory has recorded a number of programs. The ROM software is divided into two parts: bootstrap or POST (performs the check of the components of the computer) and BIOS routine (allows activation of peripheral input / output). Memoria auxiliar (externa): La memoria secundaria, memoria auxiliar, memoria periférica o memoria externa, también conocida como almacenamiento secundario, es el conjunto de dispositivos y soportes de almacenamiento de datos que conforman el subsistema de memoria de la computadora, junto con la memoria primaria o principal. Puede denominarse periférico de almacenamiento o “memoria periférica”, en contraposición a la ‘memoria central’, porque en ocasiones puede considerarse como periférico de Entrada/Salida. La memoria secundaria es un tipo de almacenamiento masivo y permanente (no volátil) con mayor capacidad para almacenar datos e información que la memoria primaria que es volátil, aunque la memoria secundaria es de menor velocidad. (https://es.wikipedia.org/wiki/Memoria_secundaria) (External) Auxiliary Memory: Secondary memory, auxiliary memory, peripheral memory or external memory, also known as secondary storage, it is the set of devices and data storage media that make up the memory subsystem of the computer, along with the primary or main memory. It may be called peripheral storage or "peripheral memory," as opposed to the 'central memory', because sometimes it can be regarded as peripheral I / O. The secondary memory is a type of mass storage and permanent (nonvolatile) with greater capacity to store data and information that the primary memory that is volatile, although the secondary memory is slower. ==