Memoria, Datos y Direccionamiento
|
|
- María Dolores Hidalgo Rodríguez
- hace 6 años
- Vistas:
Transcripción
1 Memoria, Datos y Direccionamiento Lección 2 Ing. Jorge Castro-Godínez MT7003 Microprocesadores y Microcontroladores Área de Ingeniería Mecatrónica Instituto Tecnológico de Costa Rica I Semestre 2014 Jorge Castro-Godínez Memoria, Datos y Direccionamiento 1 / 40
2 Contenido 1 Introducción Jorge Castro-Godínez Memoria, Datos y Direccionamiento 2 / 40
3 HW: Perspectiva Lógica CPU Memory Bus Disks Net USB Etc. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 3 / 40
4 HW: Perspectiva Semi-Lógica Jorge Castro-Godínez Memoria, Datos y Direccionamiento 4 / 40
5 HW: Perspectiva Física Jorge Castro-Godínez Memoria, Datos y Direccionamiento 5 / 40
6 Registros del CPU Existe una cantidad fija de registros en un CPU. Registros almacenan datos / información. Existe una caché-i en el CPU para almacenar instrucciones recientemente leídas. Si se ejecuta un lazo que se puede almacenar en la caché, el CPU trae estas instrucciones de memoria una sola vez y procede a ejecutarlas desde la caché. Registers Transparent (hardware-controlled) instruction caching Instruction Cache CPU Program-controlled data movement Memory Jorge Castro-Godínez Memoria, Datos y Direccionamiento 6 / 40
7 Rendimiento No se trata solo de la velocidad del CPU (clock rate). Los datos e instrucciones residen la memoria. Para ejecutar una instrucción, esta debe ser buscada y traida al CPU. Luego, los datos sobre los cuales la instrucción operará también se deben traer de la memoria al CPU. Ancho de banda entre CPU y Memoria puede limitar el rendimiento Cómo mejora el rendimiento? 1 Mejoras en HW para incrementar el ancho de banda de la memoria, e.g., DDR DDR2 DDR3 2 Mover menos datos hacia/desde el CPU, e.g., tener una memoria en el chip del CPU (memoria caché) Jorge Castro-Godínez Memoria, Datos y Direccionamiento 7 / 40
8 Representación binaria Representación numérica en base 2 E.g., se representa como o Implementación electrónica Facilidad para almacenar en elementos biestables ( qué es biestable?) Transmisión fiable en cables ruidosos e inexactos. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 8 / 40
9 Organización de HW CPU Register file PC ALU System bus Memory bus Bus interface I/O bridge Main memory USB controller Graphics adapter I/O bus Disk controller Expansion slots for other devices such as network adapters Mouse Keyboard Display Disk hello executable stored on disk Jorge Castro-Godínez Memoria, Datos y Direccionamiento 9 / 40
10 Codificación de valores Binario Byte = 8 bits (binary digits) E.g., = = = = Decimal Hexadecimal FF 16 Grupos de 4 bits. Byte = 2 dígitos hexadecimales. Caracteres de 0 9 y A - F FA1D37B 16 en código C: 0xFA1D37B 0xfa1d37b Jorge Castro-Godínez Memoria, Datos y Direccionamiento 10 / 40
11 Organización de la memoria en bytes (1) Cómo encontramos datos en memoria? Programas hacen referencia a direcciones Conceptualmente, un arreglo grande de bytes, cada uno con una dirección (índice, index) El Sistema Operativo (SO) provee un espacio de direcciones privado para cada proceso. Proceso = programa en ejecución + sus datos + su estado. Un programa puede modificar sus propios datos pero no los de otro. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 11 / 40
12 Organización de la memoria en bytes (2) Compilación y tiempo de ejecución controlan la ubicación de la memoria. Dónde se deben almacenar los diferente elementos de un programa? Todas las asignaciones dentro de un solo espacio de memoria. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 12 / 40
13 Palabras Las máquinas presentan tamaños de palabra. Determina el tamaño nominal de los datos de valor entero, incluye direcciones. Hace hace poco, la mayoría de las máquinas usadas presentaban palabras de 32 bits (4 bytes), x86. Limita el direccionamiento a 4 GB. Problema con aplicaciones que requieren de mucha memoria. Actualmente contamos con máquinas de 64 bits por palabra (8 bytes), x Potencial direccionamiento: 2 64 = 1, bytes (18 EB, exabytes). Backward-compatibility: soportar diferentes tamaños de palabra, múltiplos de potencias de 2. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 13 / 40
14 Organización de memoria orientada a palabra Direccionamiento de ubicaciones de bytes en memoria. Direccionamiento del primer byte de la palabra. Direccionamiento sucesivo de palabras por 4/8 bytes Dirección de las palabras 0, 1,..., 10? Jorge Castro-Godínez Memoria, Datos y Direccionamiento 14 / 40
15 Direcciones y punteros (1) Direccionamiento de ubicaciones de bytes en memoria. Una dirección es una ubicación en memoria. Un puntero es un objeto de dato que contiene una dirección Dirección 0004 almacena el valor 351 (15F 16 ). Jorge Castro-Godínez Memoria, Datos y Direccionamiento 15 / 40
16 Direcciones y punteros (2) Direccionamiento de ubicaciones de bytes en memoria. Puntero a la dirección 0004 almacenado en la dirección 001C. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 16 / 40
17 Direcciones y punteros (3) Direccionamiento de ubicaciones de bytes en memoria. Puntero a la dirección 0004 almacenado en la dirección 001C. Puntero a un puntero en Jorge Castro-Godínez Memoria, Datos y Direccionamiento 17 / 40
18 Direcciones y punteros (4) Direccionamiento de ubicaciones de bytes en memoria. Puntero a la dirección 0004 almacenado en la dirección 001C. Puntero a un puntero en Dirección 0014 almacena el valor 0C 16, es esto un puntero?. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 18 / 40
19 Representación de datos Tamaño de objetos, en bytes. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 19 / 40
20 Ordenamiento de bytes Cómo deben ordenarse los bytes dentro de una palabra de múltiples bytes? E.g., se desea almacenar la palabra de 4 bytes 0xaabbccdd, en qué orden se deben almacenar los bytes? Endianness: big endian vs. little endian. Dos convenciones diferentes, usadas por diferentes arquitecturas. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 20 / 40
21 Ejemplo de ordenamiento Big endian (PowerPC, SPARC, 68k) Big end first: byte más significativo tiene la dirección más baja. Little endian (x86, x86-64) Little end first: byte menos significativo tiene la dirección más baja. E.g., valor 0x almacenado en la dirección 0x100 Jorge Castro-Godínez Memoria, Datos y Direccionamiento 21 / 40
22 Representación de enteros int A = 12345; int B = ; long int C = 12345; Decimal: Binary: Hex: > 0x Jorge Castro-Godínez Memoria, Datos y Direccionamiento 22 / 40
23 Direcciones y punteros en C (1) & = dirección del valor * = valor en la dirección o dereference Declaración de variables int x, y Encuentra dos posiciones en memoria en donde se almacenan 2 enteros, de 1 palabra cada uno. Declaración de punteros usando * int *ptr Declara una variable ptr como puntero a un dato que es un entero. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 23 / 40
24 Direcciones y punteros en C (3) Asignación a un puntero ptr = &x Asigna a ptr que apunte a la dirección donde x está almacenado. Para usar el valor apuntado por un puntero se usa dereference Dado un puntero, podemos obtener el valor al que apunta usando el operador * *ptr es el valor en la dirección de memoria dado por el valor de ptr Por ejemplo: Si ptr = &x, entonces y = *ptr + 1 y = x +1 Si ptr = &y, entonces y = *ptr + 1 y = y +1 A qué es equivalente *(&x)? Jorge Castro-Godínez Memoria, Datos y Direccionamiento 24 / 40
25 Direcciones y punteros en C (4) Aritmética de punteros ptr = ptr + 1 Realmente suma 4, el tipo de dato de ptr es int. Cambia el valor que originalmente se estaba apuntando, al siguiente elemento en memoria Puede que haya un valor o no, esto es peligroso! Jorge Castro-Godínez Memoria, Datos y Direccionamiento 25 / 40
26 Asignación en C (1) Left-hand-side = right-hand-side LHS debe evaluar una posición en memoria, una variable. RHS debe evaluar un valor, puede ser una dirección. E.g., x en la ubicación 0x04, y en 0x18 x originalmente 0x00, y 0x3CD02700 Jorge Castro-Godínez Memoria, Datos y Direccionamiento 26 / 40
27 Asignación en C (2) E.g., x en la ubicación 0x04, y en 0x18 x originalmente 0x00, y 0x3CD02700 int x,y x = y + 3, obtener el valor en y, sumar 3, colocarlo en x. Jorge Castro-Godínez Memoria, Datos y Direccionamiento 27 / 40
28 Asignación en C (3) E.g., x en la ubicación 0x04, y en 0x18 x originalmente 0x00, y 0x3CD02700 int *x; int y x = &y + 3, qué sucede acá? Jorge Castro-Godínez Memoria, Datos y Direccionamiento 28 / 40
29 Asignación en C (4) E.g., x en la ubicación 0x04, y en 0x18 x originalmente 0x00, y 0x3CD02700 int *x; int y x = &y + 3 Se toma la dirección de y, se le suma 12 0x x000C = 0x0024 Jorge Castro-Godínez Memoria, Datos y Direccionamiento 29 / 40
30 Asignación en C (5) E.g., x en la ubicación 0x04, y en 0x18 x originalmente 0x00, y 0x3CD02700 int *x; int y x = &y + 3 *x = y El valor de y se copia en la ubicación apuntada por x Jorge Castro-Godínez Memoria, Datos y Direccionamiento 30 / 40
31 Arreglos (1) Los arreglos representan ubicaciones adyadcentes en memoria, en las cuales se almacenan los mismos tipos de datos. E.g., int big array[128]; Asigna 512 bytes adyadcentes en memoria, suponiendo una dirección inicial en memoria 0x00ff0000 Jorge Castro-Godínez Memoria, Datos y Direccionamiento 31 / 40
32 Arreglos (2) Aritmética de punteros se puede realizar para realizar indexación de arreglos en C En general: &big array[i] (big array + i), lo cual impĺıcitamente calcula: &big array[0] + i*sizeof(big array[0]) Jorge Castro-Godínez Memoria, Datos y Direccionamiento 32 / 40
33 Representación de caracteres En C se representa como un arreglo de bytes Cada byte representa un caracter tipo ASCII Un byte 0 denota el fin del arreglo. 32 space P 96 ` 112 p 33! A 81 Q 97 a 113 q B 82 R 98 b 114 r 35 # C 83 S 99 c 115 s 36 $ D 84 T 100 d 116 t 37 % E 85 U 101 e 117 u 38 & F 86 V 102 f 118 v G 87 W 103 g 119 w 40 ( H 88 X 104 h 120 x 41 ) I 89 Y 105 I 121 y 42 * 58 : 74 J 90 Z 106 j 122 z ; 75 K 91 [ 107 k 123 { 44, 60 < 76 L 92 \ 108 l = 77 M 93 ] 109 m 125 } > 78 N 94 ^ 110 n 126 ~ 47 / 63? 79 O 95 _ 111 o 127 del Jorge Castro-Godínez Memoria, Datos y Direccionamiento 33 / 40
34 Cadenas terminadas en null La cadena Harry Potter puede ser almacenada en un arreglo de 13 bytes H a r r y P o t t e r \0 Por qué colocar un 0, o null zero para terminar la cadena? string[12] = \0 Cómo se puede calcular el largo de la cadena? Jorge Castro-Godínez Memoria, Datos y Direccionamiento 34 / 40
35 Representación de datos (1) Código para imprimir el byte que presenta un dato. Cualquier tipo de dato puede ser tratado como un arreglo de bytes. Es requerido hacer un casting a tipo char. void show_bytes(char *start, int len) { int i; for (i = 0; i < len; i++) printf("%p\t0x%.2x\n", start+i, *(start+i)); printf("\n"); } void show_int (int x) { show_bytes( (char *) &x, sizeof(int)); } Jorge Castro-Godínez Memoria, Datos y Direccionamiento 35 / 40
36 Representación de datos (2) int a = 12345; // represented as 0x printf("int a = 12345;\n"); show_int(a); // show_bytes( (byte *) &a, sizeof(int)); int a = 12345; 0x7fff6f330dcc 0x39 0x7fff6f330dcd 0x30 0x7fff6f330dce 0x00 0x7fff6f330dcf 0x00 Jorge Castro-Godínez Memoria, Datos y Direccionamiento 36 / 40
37 Operaciones a nivel de bit en C Operadores bit a bit (bitwise) &,,~,^, están disponibles en C. Aplicados a cualquier tipo de dato integral Argumentos son tratados como vectores de bits Operaciones se aplican bit a bit. char a, b, c; a = (char)0x41; b = ~a; a = (char)0; b = ~a; a = (char)0x69; b = (char)0x55; c = a & b; // 0x41 -> // > 0xBE // 0x00 -> // > 0xFF // 0x41 -> // 0x55 -> // > 0x41 Jorge Castro-Godínez Memoria, Datos y Direccionamiento 37 / 40
38 Operaciones lógicas en C Comportamiento 0 es visto como falso (false) Cualquier otra cosa, no cero, es verdadero, (true) Siempre retorna 0 o 1 Terminación temprana (&& y )!0x41 -->!0x00 --> 0x69 && 0x55 --> 0x00 && 0x55 --> 0x69 0x55 --> 0x00 0x01 0x01 0x00 0x01 p && *p++ ( if (p) { *p++; } Jorge Castro-Godínez Memoria, Datos y Direccionamiento 38 / 40
39 Representación y manipulación de conjuntos (1) Vectores de bits pueden ser usados para representar conjuntos. Un vector de bits de ancho w representa un subconjunto de 0,..., w 1 Cada bit del vector representa la presencia (1) o ausencia (0) de un elemento del conjunto (set) Jorge Castro-Godínez Memoria, Datos y Direccionamiento 39 / 40
40 Representación y manipulación de conjuntos (2) Operaciones: Jorge Castro-Godínez Memoria, Datos y Direccionamiento 40 / 40
Visión general. Escuela de Ingeniería Civil en Informática Universidad de Valparaíso, Chile. http://informatica.uv.cl
Visión general Escuela de Ingeniería Civil en Informática Universidad de Valparaíso, Chile http:// 1 Visión general C: Java: auto *a = malloc(sizeof(auto)); a->kilometraje = 100; a->litros_bencina = 17;
Más detallesDefinición de Memoria
Arquitectura de Ordenadores Representación de Datos en Memoria Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Definición de Memoria DRM-1 La memoria
Más detallesApuntadores (Punteros)
Apuntadores (Punteros) x9ff10 X int 209 SESION 7 *ptr Definición Llamados también punteros. Un Apuntador es una variable que contiene una dirección de memoria, la cual corresponderá a un dato o a una variable
Más detallesEl nivel ISA (II)! Conjunto de Instrucciones
El nivel ISA (II) Conjunto de Instrucciones EC-2721 Arquitectura del Computador I Que es un Conjunto de Instrucciones? Colección completa de instrucciones comprendida por un procesador Lenguaje de máquina
Más detallesIntroducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones
Introducción a la Computación Capítulo 10 Repertorio de instrucciones: Características y Funciones Que es un set de instrucciones? La colección completa de instrucciones que interpreta una CPU Código máquina
Más detallesEstructura del Computador
Estructura del Computador 1 definiciones preliminares Estructura: es la forma en que los componentes están interrelacionados Función: la operación de cada componente individual como parte de la estructura.
Más detalles1. Introducción a la Arquitectura de Computadoras
1. Introducción a la Arquitectura de Computadoras M. Farias-Elinos Contenido Definiciones Estructura de una computadora Evolución de las computadoras Generaciones de computadoras Evolución de la família
Más detallesEl lenguaje C. 1. Identificadores, constantes y variables
Principios de Programación El lenguaje C 1. Identificadores, constantes y variables 1.1. Conceptos de memoria Los nombres de variable como x, y, suma corresponden a localizaciones o posiciones en la memoria
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesCurso de Programación en C. Licenciatura, FCQeI. APUNTADORES.
APUNTADORES. La memoria de una máquina esta ordenada en forma de celdas numeradas consecutivamente y que se pueden manipular individualmente o en grupos contiguos. La siguiente figura muestra una representación
Más detallesTema 13: Apuntadores en C
Tema 13: Apuntadores en C M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco) 1 Contenido Introducción
Más detallesLección 2 Introducción al lenguaje C
Lección Introducción al lenguaje C Decimal Binario Hexadecimal A B C D E F Octal Equivalencia entre decimal, binario, hexadecimal y octal. Código ASCII (American Standard Code for Information Interchange)
Más detallesSistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
Más detallesUnidad I: Organización del Computador. Ing. Marglorie Colina
Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar
Más detallesEstructura y Tecnología de Computadores. Módulo C. Arquitectura del procesador. Tema 4. Modos de direccionamiento y tipos de datos
1 Estructura y Tecnología de Computadores Módulo C. Arquitectura del procesador Tema. Modos de direccionamiento y tipos de datos José Manuel Mendías Cuadros Dpto.. Arquitectura de Computadores y Automática
Más detalles2^10 2^9 2^8 2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0 SUMA
Universidad Rafael Urdaneta Facultad de Ingeniería Escuela de Ingeniería de Computación Cátedra: Programación I Laboratorio - Semestre 2012-1 (Sección C ) Profesor: Jaime Soto Examen #1 - Fecha: 07-03-2012
Más detallesProgramación. Test Autoevaluación Tema 3
Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.
Más detallesPráctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros
Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros
Más detallesTEMA III: OPERACIONES CON LOS DATOS
CUESTIONES A TRATAR: Cual es la función de la unidad operativa? Es necesaria? Qué tipos de circuitos implementan la unidad operativa? Unidad operativa frente a ALU Qué es una operación de múltiple precisión?
Más detallesOrganización del Computador I. Introducción e Historia
Organización del Computador I Introducción e Historia Introducción Qué es una computadora? Stallings: Máquina digital electrónica programable para el tratamiento automático de la información, capaz de
Más detallesINTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA
APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto
Más detalles3 - Arquitectura interna de un up
cei@upm.es 3 - Arquitectura interna un up Componentes básicos Lenguaje ensamblador y código máquina Ciclo básico ejecución una instrucción Algunos ejemplos Universidad Politécnica Madrid Componentes básicos
Más detallesTema 2. El lenguaje JAVA
Tema 2. El lenguaje JAVA Nomenclatura habitual Variables Tipos de variables Tipos primitivos Referencias Arrays Operadores Operadores de Java Precedencia de operadores Sentencias de control Sentencias
Más detallesObjetivos. Objetivos. Arquitectura de Computadores. R.Mitnik
Objetivos Objetivos Arquitecturas von Neumann Otras Unidad Central de Procesamiento (CPU) Responsabilidades Requisitos Partes de una CPU ALU Control & Decode Registros Electrónica y buses 2 Índice Capítulo
Más detallesOrganización del Sistema de Memoria. 1. Tipos de memoria 2. Jerarquía de memoria 3. El principio de localidad 4. Organización de la memoria
Organización del Sistema de Memoria 1. Tipos de memoria 2. Jerarquía de memoria 3. El principio de localidad 4. Organización de la memoria 1. Tipos de memoria La memoria se puede clasificar de acuerdo
Más detallesPrincipios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario
Más detallesDatos y tipos de datos
Datos y tipos de datos Dato Representación formal de hechos, conceptos o instrucciones adecuada para su comunicación, interpretación y procesamiento por seres humanos o medios automáticos. Tipo de dato
Más detallesFUNDAMENTOS DE INFORMÁTICA
FUNDAMENTOS DE INFORMÁTICA Tema 1 Introducción a la Programación en Visual Basic Departamento de Ingeniería de Sistemas y Automática Universidad de Vigo undamentos de Informática. Departamento de Ingeniería
Más detallesRepresentación de la información
Laboratorio de Introducción a las Ciencias de la Computación Página 1 UNIERSIDAD CATÓLICA DE SANTA MARÍA PROGRAMA PROESIONAL DE INGENIERÍA DE SISTEMAS SESIÓN 2: Representación de la información OBJETIOS
Más detallesLenguaje binario. Código ASCII. Medidas de la información
Hardware y Software (1/5) Lenguaje binario Los ordenadores sólo entienden 1 y 0. Lógica positiva: 0: no hay señal 1: hay señal Código ASCII Medidas de la información Unidad mínima de información: BIT (0
Más detallesSISTEMAS OPERATIVOS Arquitectura de computadores
SISTEMAS OPERATIVOS Arquitectura de computadores Erwin Meza Vega emezav@unicauca.edu.co Esta presentación tiene por objetivo mostrar los conceptos generales de la arquitectura de los computadores, necesarios
Más detallesUNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.
UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO 1.- Resumen de Prog1 Comentarios es C++ Declaraciones de variables.
Más detalles12 símbolos (13 si se incluye el espacio en blanco)
Universidad Rafael Urdaneta Facultad de Ingeniería Escuela de Ingeniería de Computación Cátedra: Programación I Laboratorio - Semestre 2012-1 (Sección L y P ) Profesor: Jaime Soto Examen #1 - Fecha: 09-03-2012
Más detallesFecha de Introducción. Velocidad de reloj. Anchura del bus. Número de transistores. (microns) Memoria direccionable.
Los Microprocesadores MIA José Rafael Rojano Cáceres Arquitectura de Computadoras I Fecha de Introducción Velocidad de reloj Anchura del bus Número de transistores (microns) Memoria direccionable Evolución
Más detallesTEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS
TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:
Más detallesRepresentación de datos y aritmética básica en sistemas digitales
Representación de datos y aritmética básica en sistemas digitales DIGITAL II - ECA Departamento de Sistemas e Informática Escuela de Ingeniería Electrónica Rosa Corti 1 Sistemas de Numeración: Alfabeto:
Más detallesSist s em e a m s s O per e ativos o. s Unidad V Entrada Sali l d i a.
Sistemas Operativos. Unidad V Entrada Salida. Programación de Entrada y Salida Introducción. Comunicación de los procesos con el mundo externo : Mecanismo de E/S de información. Aspectos que diferencian
Más detallesExpresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz
Expresiones Aritméticas Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Expresiones Aritméticas El computador puede realizar cálculos además de mostrar datos por pantalla.
Más detalles0-31 : caracteres de control : carac. Comunes : especiales (flechas, símbolos) y particulares (ñ)
Hardware y Software (1/6) Lenguaje binario Los ordenadores sólo entienden 1 y 0. Lógica positiva: 0: no hay señal 1: hay señal Código ASCII American Standard Code for Information Interchange Carácter =
Más detallesINDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)
INDICE Capitulo 1. Qué es un computador? 1.1. Introducción 1 1.2. El computador como dispositivo electrónico 2 1.3. Cómo se procesa la información? 3 1.4.Diagrama de bloques de un computador 1.4.1. Información
Más detallesLaboratorio de Arquitectura de Redes. Punteros en lenguaje C
Laboratorio de Arquitectura de Redes Punteros en lenguaje C Punteros en lenguaje C Definición Declaración e inicialización de punteros Operadores de punteros: «*» y «&» Operaciones con punteros Operaciones
Más detallesTema: Microprocesadores
Universidad Nacional de Ingeniería Arquitectura de Maquinas I Unidad I: Introducción a los Microprocesadores y Microcontroladores. Tema: Microprocesadores Arq. de Computadora I Ing. Carlos Ortega H. 1
Más detallesTipos de Datos Estructurados
- Unidad 3 Tipos de Datos Estructurados 1 Tipos de Datos Compuestos en C 2 Arreglos (1) Un arreglo (array) una colección homogénea de datos simples ó compuestos, que se referencian con un nombre comú,
Más detallesCentro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Arquitectura de Ordenadores Tutor: Antonio Rivero Cuesta Unidad Didáctica 1 Representación de la Información y Funciones Lógicas Tema 1 Representación de la Información
Más detallesPROCESADORES. Existen 3 tipos de procesadores: DE GALLETA, DE PINES Y DE CONTACTO. DE GALLETA: se utilizaban en las board en los años 80 y 90.
PROCESADORES TIPOS DE PROCESADORES. Existen 3 tipos de procesadores: DE GALLETA, DE PINES Y DE CONTACTO DE GALLETA: se utilizaban en las board en los años 80 y 90. DE PINES: reemplazaron los procesadores
Más detallesArquitectura de Computadoras. Anexo Clase 8 Buses del Sistema
Arquitectura de Computadoras Anexo Clase 8 Buses del Sistema Estructuras de interconexión Todas las unidades han de estar interconectadas. Existen distintos tipos de interconexiones para los distintos
Más detalles4. Operadores Operador asignación
Programación orientada a objetos con Java 43 4. Operadores Objetivos: a) Describir los operadores (aritméticos, incrementales, de relación, lógicos y de asignación) y los tipos de dato primitivos sobre
Más detallesApuntadores en C y C++
Apuntadores en C y C++ Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Prof. Marcos A. Gil T. 8 de diciembre de 2004 1. Introducción Los apuntadores en C y C++ son una herramienta
Más detallesEn base a los conceptos dados del material teórico, disponible en: resuelva las siguientes cuestiones.
En base a los conceptos dados del material teórico, disponible en: resuelva las siguientes cuestiones. Para consolidar los conceptos, resuelva los ejercicios. 1. Indique la opción correcta: Un bit es:
Más detallesAritmética de Enteros
Aritmética de Enteros La aritmética de los computadores difiere de la aritmética usada por nosotros. La diferencia más importante es que los computadores realizan operaciones con números cuya precisión
Más detallesFUNDAMENTOS DE INFORMATICA
FUNDAMENTOS DE INFORMATICA TEMAS QUE SE TRATARÁN: Arquitectura Interna Sistemas Operativos Programación en Visual Basic Bases de Datos Redes e Internet 1 FUNDAMENTOS DE INFORMATICA Tema 1: Arquitectura
Más detallesSensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J.
Sensor de Temperatura utilizando el Starter Kit Javelin Stamp Realizado por: Bertha Palomeque A. Rodrigo Barzola J. INTRODUCCION DIFERENCIAS EJEMPLOS JAVA Orientado a Objetos Multiplataforma Programar
Más detallesInformática Ingeniería en Electrónica y Automática Industrial
Informática Ingeniería en Electrónica y Automática Industrial Entrada y salida estándar V1.3 Autores Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato:
Más detallesEjercicios del tema 4. El procesador
jercicios del tema 4. l procesador jercicio 1. Considere un procesador de 32 bits con una frecuencia de reloj de 500 MHz con la estructura del mostrado en el jercicio 3. La memoria se direcciona por bytes
Más detallesQué es un programa informático?
Qué es un programa informático? Un programa informático es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo sólo es capaz de procesar elementos binarios, es decir, una serie de 0s
Más detallesENIAC, Primer computador electrónico y su panel de conexiones
-1 La arquitectura de Von Neumann. Los primeros computadores se programaban en realidad recableándolos. Esto prácticamente equivalía a reconstruir todo el computador cuando se requería de un nuevo programa.
Más detallesINFORMATICA I EJERCICIOS PROPUESTOS Buscar en el diccionario Qué es INFORMÁTICA?, Qué es
INFORMATICA I EJERCICIOS PROPUESTOS 1.1-1 Buscar en el diccionario Qué es INFORMÁTICA?, Qué es COMPUTACIÓN? 1.1-2 Qué es el HARDWARE de una computadora?.... 1.1-3 Qué es el SOFTWARE de una computadora?.
Más detallesLaboratorio de Arquitectura de Redes. Entrada y salida estándar
Laboratorio de Arquitectura de Redes Entrada y salida estándar Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato: scanf() El buffer de teclado Entrada
Más detallesArquitectura (Procesador familia 80 x 86 )
Arquitectura (Procesador familia 80 x 86 ) Diseño de operación Basada en la arquitectura Von Newman Memoria CPU asignadas direcciones I / O BUS: Es un canal de comunicaciones Bus de direcciones: Contiene
Más detallesArquitectura de Computadores II Clase #7
Arquitectura de Computadores II Clase #7 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Veremos Memoria virtual 1 Recordemos: Jerarquía de Memoria Registros Instr.
Más detallesCentro Asociado Palma de Mallorca. Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...
Más detallesConceptos de Arquitectura de Computadoras Curso 2015
PRACTICA 1 Assembly, Instrucciones, Programas, Subrutinas y Simulador MSX88 Objetivos: que el alumno Domine las instrucciones básicas del lenguaje assembly del MSX88. Utilice los diferentes modos de direccionamiento.
Más detalles2. Elementos de Arquitectura de Computadores
2. Elementos de Arquitectura de Computadores INF2100 - Computación I Semestre 2/2007 Cristian Ruz R. (UDP) 2. Elementos de Arquitectura de Computadores INF2100 - Sem. 2/2007 1 / 16 Objetivos En este capítulo
Más detallesUnidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Más detallesIntroducción a la arquitectura de computadores
Introducción a la arquitectura de computadores Departamento de Arquitectura de Computadores Arquitectura de computadores Se refiere a los atributos visibles por el programador que trabaja en lenguaje máquina
Más detallesRepresentación de la Información.... en los Computadores
Representación de la Información... en los Computadores 1 Información e Informática Un computador es una máquina que procesa información. La ejecución de un programa implica el tratamiento de los datos.
Más detallesFundamentos de JAVA. Angel Kuri Enero, /2/2006
Fundamentos de JAVA Angel Kuri Enero, 2006 Enunciados y Expresiones Los siguientes son enunciados sencillos: int i = 1 import java.awt.font System.out.println( Esta moto es una + color + + marca); m.enginestate
Más detallesAlgoritmos. Medios de expresión de un algoritmo. Diagrama de flujo
Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten
Más detallesDescripción y Contenido del Curso. Programación C++ Capacity Academy.
Descripción y Contenido del Curso Programación C++ Capacity Academy Educación en Tecnología de la Información Online, Efectiva y Garantizada Qué aprenderá si toma este Curso? En este curso aprenderás todo
Más detallesEstructura de Microprocesadores. Profesor Ing. Johan Carvajal Godínez
Estructura de Microprocesadores PIC 18F4550 Administración de la memoria Profesor Ing. Johan Carvajal Godínez Contenidos Organización de la memoria del MCU Administración de la memoria de programa (Flash)
Más detallesDES: Programa(s) Educativo(s): Tipo de materia: Clave de la materia: Semestre: Área en plan de estudios:
UNIVERSIDAD AUTÓNOMA DE CHIHUAHUA Clave: 08MSU0017H Clave: 08USU4053W FACULTAD DE INGENIERÍA PROGRAMA DEL CURSO: INGENIERÍA DE SOFTWARE Y COMPUTACIÓN I DES: Programa(s) Educativo(s): Tipo de materia: Clave
Más detallesNociones Básicas de un Sistema Computador. Clase 2 Introducción a la Programación
Nociones Básicas de un Sistema Computador Clase 2 Introducción a la Programación Antes de empezar a programar Veremos algunos conceptos muy básicos sobre: Computadoras Sistemas Operativos Programas, lenguajes
Más detallesSistemas de Representación. Organización del Computador 1 Verano 2016
Sistemas de Representación Organización del Computador 1 Verano 2016 Los computadores comprenden el lenguaje de los números La organización de un computador depende (entre otros factores) del sistema de
Más detallesProgramación de Sistemas. Unidad 1. Programación de Sistemas y Arquitectura de una Computadora
Programación de Sistemas Unidad 1. Programación de Sistemas y Arquitectura de una Computadora Programación de Sistemas Arquitectura de una Computadora Componentes de un Sistema de Cómputo Un sistema está
Más detallesMODBus RTU en los registradores CAMRegis
157FHF1 E MODBus RTU en los registradores CAMRegis 1. INTRODUCCIÓN Este documento está orientado a describir al usuario el funcionamiento del protocolo serie de comunicaciones MODBus RTU implementado por
Más detallesIntroducción. Universidad Nacional Tecnológica del Cono Sur de Lima JORGE AUGUSTO MARTEL TORRES 1
Universidad Nacional Tecnológica del Cono Sur de Lima Especialidad Ingeniería Mecánica Ingeniería Electrónica Introducción PROGRAMACIÓN DE INGENIERÍA Semana 01-A: Introducción Arquitectura Ing. Jorge A.
Más detallesTema: Tipos de datos y conversiones
Tema: Tipos de datos y conversiones Objetivos: El propósito de este tema es que el alumno se familiarice con el entorno de desarrollo de Visual C# Express y realice diversos programas en el entorno Consola,
Más detallesProgramación En Lenguaje C
Programación En Lenguaje C Introducción Básica para Primero de Bachillerato TECNOLOGÍA DE LA INFORMACIÓN IES PALAS ATENEA Lenguaje C Estructurado Secuencial De alto Nivel Altamente portable Necesita un
Más detallesESCUELA DE INFORMÁTICA
TÉCNICO EN SISTEMAS LABORAL SUBMODULO TEMA 1 (Visual Basic for Application) Microsoft VBA (Visual Basic for Applications) es el lenguaje de macros de Microsoft Visual Basic que se utiliza para programar
Más detallesTEMA 1: Concepto de ordenador
TEMA 1: Concepto de ordenador 1.1 Introducción Los ordenadores necesitan para su funcionamiento programas. Sin un programa un ordenador es completamente inútil. Para escribir estos programas necesitamos
Más detallesLenguajes de programación
Lenguajes de programación Un computador solo entiende lenguaje binario Un procesador tiene un conjunto finito de operaciones binarias Un programa de computador es una secuencia de estas instrucciones Etapas
Más detalles1.2.- EL MICROPROCESADOR.
1.2.- EL MICROPROCESADOR. El microprocesador es un circuito integrado que contiene algunos o todos los elementos necesarios para conformar una (o más) unidad central de procesamiento UCP, también conocido
Más detallesBIBLIOGRAFIA TEORIA DE CIRCUITOSY DISPOSOTIVOS BOYLESTAD ELECTRONICA DIGITAL TOKHEIM SISTEMAS DIGITALES TOCCI
Guía de preparación para el examen ELECTRONICA CxTx En esta materia básicamente se evalúan temas tales como son: MULTIVIBRADORES, MEMORIAS, CONTADORES Y COMPUERTAS LOGICAS, SUMADOR RESTADOR Y MICROPOCESADORES
Más detalles1. Conceptos de memoria.
1. Conceptos de memoria. Cuando se habla de memoria en el contexto de un programa, se trata de una serie de celdas que tienen la capacidad de almacenar datos durante la ejecución del programa. Estas celdas
Más detallesProgramación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
Más detallesTIPO DE DATO ABSTRACTO (TDA)
TIPO DE DATO ABSTRACTO (TDA) Ing. Eduard Antonio Lozano Córdoba Nota: Toda la información fue copiada de: Libros físicos e Internet Actividad Extra Clases #include #include int binario(int
Más detallesArquitectura de Computadores II Clase #7
Arquitectura de Computadores II Clase #7 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2009 Veremos Memoria virtual Resumen de ideas para mejorar performance 1 Recordemos:
Más detallesACTIVIDADES TEMA 1. EL LENGUAJE DE LOS ORDENADORES. 4º E.S.O- SOLUCIONES.
1.- a) Explica qué es un bit de información. Qué es el lenguaje binario? Bit es la abreviatura de Binary digit. (Dígito binario). Un bit es un dígito del lenguaje binario que es el lenguaje universal usado
Más detallesEstructura de Computadores Tema 1. Introducción a los computadores
Estructura de Computadores Tema 1. Introducción a los computadores Departamento de Informática Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas UNIVERSIDAD CARLOS III DE MADRID Contenido
Más detallesJava Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.
Java Avanzado. Guía 1 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 2 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo
Más detallesMIPS: Modelo de programación. (I Parte)
MIPS: Modelo de programación (I Parte) MIPS: Microprocessor without Interlocked Pipeline Stages Trabajaremos como MIPS Son similares a las desarrolladas en los años 80 Cerca de 100 millones de procesadores
Más detallesIntroducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez
Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez Sintaxis de Java Sintaxis Define las reglas que determinar el uso de palabras clave, operadores y variables para construir y evaluar expresiones.
Más detallesFundamentos de la programación
Fundamentos de la programación 2A Grado en Ingeniería Informática Grado en Ingeniería del Software Grado en Ingeniería de Computadores Facultad de Informática Universidad Complutense int 214 float 216
Más detallesTIPOS DE DATOS BASICOS EN LENGUAJE C
TIPOS DE DATOS BASICOS EN LENGUAJE C TIPO char int float double void ANCHO EN BIT 64 0 TIPOS DE DATOS RANGO EN PC -12 a 127 3.4E-3 a 3.4E+3 1.7E-30 a 1.7E+30 sin valores TIPO ANCHO EN BIT RANGO EN PC char
Más detallesProgramación en Visual Basic Ricardo Rodríguez García
Manual Básico de Programación en Visual Basic 1.- Estructura de un proyecto Visual Basic Los programas o aplicaciones desarrolladas en Visual Basic van a constituir un único paquete que denominaremos proyecto.
Más detallesGESTIÓN DE ARCHIVOS. Presentado por: Alba Arosemena Alma Vargas Hospicia Mendoza Roselvira Fernández Ahías Arosemena
GESTIÓN DE ARCHIVOS Presentado por: Alba Arosemena Alma Vargas Hospicia Mendoza Roselvira Fernández Ahías Arosemena INTRODUCCIÓN En la mayoría de las aplicaciones, el archivo es el elemento central. La
Más detallesArquitectura de Computadoras para Ingeniería
Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Arquitectura de Computadoras para Ingeniería Ejercicios Trabajo Práctico N 7 Jerarquía de Memoria Primer Cuatrimestre de
Más detallesConvenciones. Introducción. Unidades principales en la implementación. El procesador: camino de datos y control. Tipos de elementos:
Unidades principales en la implementación Data El procesador: camino de datos y control IEC UTM Moisés E. Ramírez G. 1 Register # PC Address Instruction Instruction Registers Register # ALU memory Register
Más detallesEl ordenador. Codificación binaria. Código ASCII
El ordenador Codificación binaria La razón por la que utilizar únicamente dos dígitos se debe a que todos los dispositivos de un ordenador trabajan con dos estados únicos. Activado-Desactivado, pasa corriente-no
Más detallesFundamentos de Informática 2. Conceptos Básicos. El ordenador. Contenidos. El ordenador. El ordenador. El ordenador. Tema 2.
2 Contenidos Fundamentos de Informática 2. Conceptos Básicos - El Ordenador (el hardware) - El Software - - El bit y sus unidades de medida - - - Fundamentos de Informática Grado en Ingeniería Química
Más detalles