JOSE ANTONIO ALVAREZ BERMEJO

ESTRUCTURA DE COMPUTADORES PROGRAMACION DEL PROCESADOR MIPS Y SU ENSAMBLADOR / PROGRAMACION DE PROCESADOR MIPS Y SU ENSAMBLADOR - 1 ED - MEXICO: ALFAOMEGA 2009 - 352P IKUSTRACION 17X23CM

Autores ÁLVAREZ, José 0
Editorial Alfaomega, Ra-Ma 0
Año de edición No 0
Código de barras 9786077686187 9786077686187
ISBN 978-607-7686-18-7 978
ISBN E-Book No 0
Materiales adicionales No 0
Número de la edición 1 1
Número de páginas 352 352
Dimensiones 17x23 cms. 17
Peso en gramos
Encuadernación Rústica 0
Idioma Español 0

Índice de contenido
AGRADECIMIENTOS
INTRODUCCIÓN
ICONOGRAFÍA
MÓDULO 1. INTRODUCCIÓN

CAPÍTULO 1. ASENTANDO CONCEPTOS: PROGRAMA. SISTEMA
OPERATIVO. PROCESO. EL PROCESADOR. RENDIMIENTO
1.1 ¿QUÉ UTILIDAD TIENE UN PROGRAMA O FICHERO EJECUTABLE?
1.1.1 La función del sistema operativo
1.1.2 La casa de Gran Hermano (el procesador y su entorno)
1.2 ¿QUÉ ES EL RENDIMIENTO? ¿CÓMO SE MIDE?
1.2.1 El tiempo de ejecución, los M.I.P.S. y los ciclos de reloj. El concepto de
rendimiento
1.2.2 Qué es un ciclo. El reloj
1.3 RETOS
1.3.1 Desprotección de ejecutables
1.3.2 El uso de binders o mezcladores

CAPÍTULO 2. ARQUITECTURA DE COMPUTADORES Y EL LENGUAJE
ENSAMBLADOR
2.1 INTRODUCCIÓN
2.2 DIFERENTES ARQUITECTURAS, DIFERENTES PROCESADORES FUNDAMENTOS
2.4 EL CICLO DE MÁQUINA BÁSICO
2.5 INSTRUCCIONES MÁQUINA
2.6 SENTENCIA DE LENGUAJE ENSAMBLADOR
2.7 TRADUCCIÓN DE PROGRAMAS
2.8 LENGUAJE MÁQUINA
2.9 ALMACENAMIENTO PRIMARIO
2.10 ARQUITECTURA FRENTE A IMPLEMENTACIÓN
2.10.1 Emulación
2.10.2 Traducción separada o por fases
2.10.3 Cargadores

CAPÍTULO 3. LA IMPORTANCIA DEL BIT. COMPUTADORAS DIGITALES
3.1 LAS COMPUTADORAS Y EL SISTEMA BINARIO
3.2 PATRONES DE BITS

CAPÍTULO 4. LA COMPUTADORA
4.1 COMPONENTES DE UNA COMPUTADORA
4.2 ¿QUÉ ES UN CONTROLADOR DE E/S?
4.3 MEMORIA PRINCIPAL
4.3.1 Memoria virtual
4.3.2 Memoria caché
4.3.3 Contenidos de memoria. La información son bits en un contexto
MÓDULO 2. REPRESENTACIÓN INTERNA DE LOS DATOS EN MIPS

CAPÍTULO 5. REPRESENTACIÓN DE CARACTERES CON PATRONES
DE BITS
5.1 REPRESENTACIÓN DE CARACTERES
5.2 TABLA DE CARACTERES ASCII
5.3 SECUENCIAS ASCII
5.4 ARCHIVOS
5.4.1 Archivos de texto
5.4.2 Ficheros ejecutables
5.4.3 Archivos binarios
5.5 DETECCIÓN Y CORRECCIÓN DE ERRORES CON HAMMING

CAPÍTULO 6. REPRESENTACIÓN NUMÉRICA
6.1 QUÉ ES UN NÚMERO
6.2 REPRESENTACIONES
6.3 NOTACIÓN POSICIONAL
6.3.1 Notación decimal
6.3.2 Notación en base cinco
6.3.3 Cambiando la representación
6.4 REPRESENTACIÓN DE NÚMEROS USANDO BASE DOS
6.5 REPRESENTACIÓN BINARIA Y HEXADECIMAL DE ENTEROS
6.5.1 Patrones de bits frecuentes
6.5.2 Representación en base 16
6.5.3 Conversión de representación hexadecimal a decimal
6.5.3.1 Desplazamiento de una posición
6.5.3.2 Desplazamiento de una posición en base 16
6.5.4 Representación en base dieciséis, diez y dos
6.5.5 Conversión de representación hexadecimal a representación binaria
6.6 CONVERSIÓN ENTRE REPRESENTACIONES
6.6.1 Conversión de decimal a base B

CAPÍTULO 7. SUMA BINARIA Y REPRESENTACIÓN EN COMPLEMENTO
A DOS
7.1 ALGORITMO DE SUMA BINARIO
7.1.1 Sumas con N bits
7.1.2 Detección del overflow/desbordamiento
7.1.3 Sumas en hexadecimal
7.2 ENTEROS NEGATIVOS
7.2.1 Signo y magnitud
7.2.2 Complemento a dos
7.2.2.1 El bit de signo
7.2.2.2 ¿Cómo detectar el overflow en el complemento a dos?
MÓDULO 3. EL SIMULADOR MIPS (PCSPIM)

CAPÍTULO 8. PRIMER PROGRAMA MIPS
8.1 INICIALIZACIÓN DEL ENTORNO DE TRABAJO EN MIPS
8.2 LA VENTANA DE BIENVENIDA
8.3 UN PROGRAMA MIPS BÁSICO
8.4 CONFIGURACIÓN BÁSICA DEL SIMULADOR MIPS
8.4.1 El contador de programa o PC (program Counter). Configuración
8.4.2 El programa en ejecución
8.4.3 RunTime o tiempo de ejecución

CAPÍTULO 9. MODELO DE PROGRAMACIÓN EN MIPS
9.1 MODELO DE MEMORIA
9.1.1 Memoria de datos
9.1.2 Memoria de instrucciones
9.2 ORGANIZACIÓN DE LA MEMORIA
9.3 REGISTROS
9.3.1 Registros y la ALU
9.3.2 Código máquina
9.3.3 Convención en el uso de los registros.
9.4 CICLO MÁQUINA
9.4.1 Control de ejecución

CAPÍTULO 10. OPERANDOS Y OPERACIONES LÓGICAS CON BITS
10.1 OPERANDOS INMEDIATOS
10.2 INSTRUCCIÓN INMEDIATA ORI

CAPÍTULO 11. MÁS INSTRUCCIONES LÓGICAS
11.1 DESPLAZAMIENTO LÓGICO A LA IZQUIERDA.
11.1.1 No-OP
11.2 DESPLAZAMIENTO LÓGICO A LA DERECHA.
11.3 INSTRUCCIÓN OR
11.4 INSTRUCCIÓN AND
11.5 INSTRUCCIÓN XOR
11.6 INSTRUCCIÓN NOR
MÓDULO 4. CÓMO PROCESAR LOS DATOS.

CAPÍTULO 12. INSTRUCCIONES DE ADICIÓN Y SUSTRACCIÓN
12.1 LA ARITMÉTICA Y LA MANIPULACIÓN DE BITS
12.2 LA INSTRUCCIÓN ADDU
12.3 PROGRAMA DE EJEMPLO
12.4 NEGACIÓN DE UN ENTERO EN COMPLEMENTO A DOS
12.5 LA INSTRUCCIÓN ADDIU
12.6 LA INSTRUCCIÓN SUBU

CAPÍTULO 13. MULTIPLICACIÓN, DIVISIÓN ENTERA E INSTRUCCIONES
DE DESPLAZAMIENTO ARITMÉTICO
13.1 EL DOBLE DE ESPACIO
13.2 LA UNIDAD DE MULTIPLICACIÓN DEL PROCESADOR MIPS
13.3 LAS INSTRUCCIONES DIV Y DIVU
13.4 DESPLAZAMIENTO ARITMÉTICO A LA DERECHA

CAPÍTULO 14. INSTRUCCIONES DE ACCESO A MEMORIA
14.1 CARGA Y ALMACENAMIENTO
14.2 BIG ENDIAN Y LITTLE ENDIAN
14.3 DIRECCIONES MIPS
14.4 ARRAYS EN ENSAMBLADOR

CAPÍTULO 15. MÁS SOBRE EL ACCESO A MEMORIA: PALABRAS Y MEDIAS PALABRAS
15.1 CARGAR EXCLUSIVAMENTE UN BYTE
15.2 ALMACENAR UN BYTE INDIVIDUAL
15.3 REQUISITOS DE ALMACENAMIENTO DE LOS BYTES
15.4 ¿CÓMO ESCRIBIR EN MEMORIA MEDIAS PALABRAS?
MÓDULO 5. BIFURCACIONES, INSTRUCCIONES DE DECISIÓN Y BUCLES
CAPÍTULO 16. ARQUITECTURA DE COMPUTADORES Y EL LENGUAJE ENSAMBLADOR
16.1 REPASO DEL CONCEPTO DE CICLO MÁQUINA
16.2 ALTERACIÓN DEL CONTADOR DE PROGRAMA
16.3 LA INSTRUCCIÓN DE SALTO JMP
16.4 SALTOS CONDICIONALES

CAPÍTULO 17. INSTRUCCIONES CONDICIONALES AVANZADAS
17.1 BRANCH ON LESS THAN ZERO Y BRANCH ON GREATER THAN ZERO
17.2 INSTRUCCIONES SET
17.3 BUCLES CONTROLADOS POR CONTADOR

CAPÍTULO 18. PROGRAMACIÓN ESTRUCTURADA
18.1 POTENCIA DE CÓMPUTO
18.2 PROCESADORES CON IDÉNTICA POTENCIA DE CÁLCULO
18.3 CONJUNTO DE INSTRUCCIONES MÍNIMO
18.4 CISC/RISC
18.5 PROGRAMACIÓN ESTRUCTURADA
18.6 POTENCIA COMPUTACIONAL DE LA PROGRAMACIÓN ESTRUCTURADA

CAPÍTULO 19. MÁS SOBRE SALTOS
19.1 INSTRUCCIONES DE BIFURCACIÓN
19.2 INSTRUCCIÓN DE SALTO INCONDICIONAL
19.3 TABLA DE INSTRUCCIONES DE SALTO
19.4 ESTRUCTURA IF-ELSE
19.5 CÓMO INSERTAR OPERANDOS INMEDIATOS EN LAS INSTRUCCIONES DE SALTO
19.6 INSTRUCCIÓN SET ON LESS THAN
19.7 DIRECCIONAMIENTO INDEXADO
MÓDULO 6. LA PILA (STACK) Y LAS LLAMADAS A PROCEDIMIENTOS Y FUNCIONES

CAPÍTULO 20. LA PILA EN TIEMPO DE EJECUCIÓN
20.1 EL STACK (PILA) DE MIPS
20.2 LA PILA EN TIEMPO DE EJECUCIÓN

CAPÍTULO 21. LLAMADAS A FUNCIÓN
21.1 RUTINAS INVOCADORAS Y RUTINAS
21.2 PROTOCOLO DE LLAMADAS A LAS FUNCIONES
21.3 EJEMPLO DE UNA INVOCACIÓN A SUBRUTINA SENCILLA

CAPÍTULO 22. LLAMADAS COMPLEJAS A FUNCIONES USANDO EL STACK (PILA)
22.1 CÓMO GUARDAR LA DIRECCIÓN DE RETORNO
22.2 CADENA DE LLAMADAS RECURSIVAS
22.3 PROTOCOLO DE LLAMADAS A FUNCIÓN COMPLEJAS

CAPÍTULO 23. C Y ENSAMBLADOR. ESTRUCTURAS Y PUNTEROS
23.1 GESTIÓN DE MEMORIA
23.2 REGISTROS: VARIABLES MAS COMPLEJAS

APÉNDICES
APÉNDICE A. FUNCIONAMIENTO INTERNO DEL PROCESADOR MIPS.
MODELO DE MEMORIA, REGISTROS, UNIDADES FUNCIONALES
APÉNDICE B. EL PUNTO FLOTANTE. UNA INTRODUCCIÓN AL IEEE-754.
FLOATS EN MIPS
B.1 NOTACIÓN EN PUNTO
B.2 NOTACIÓN EN PUNTO FLOTANTE. NOTACIÓN CIENTÍFICA. IEEE-754
B.3 ARITMÉTICA IEEE-754
ÍNDICE ALFABÉTICO

Proporcionar al lector una base sólida para abordar el estudio de la arquitectura de computadoras y el desarrollo software.
Características
Durante todo el libro se revela la relación existente entre el desarrollo software y la arquitectura de computadores. Muestra cómo un lenguaje de alto nivel terminará traduciéndose al lenguaje máquina, característico del procesador sobre el que se trabaja.
Enseña las técnicas de desarrollo propias del ensamblador, lo que ayudará mucho en el desarrollo de programas de alto nivel.
No es objetivo de este texto convertir al lector en un programador experimentado de lenguaje MIPS sino el de proporcionarle una visión global sobre el funcionamiento de todos los sistemas de computadores.
Ventajas Competitivas

La arquitectura, del procesador que se ha usado en el libro, goza de un diseño claro y eficaz, características que hacen que este procesador sea fácil y provechoso para el estudio.
Enseña las técnicas de desarrollo propias del ensamblador, lo que ayudará mucho en el desarrollo de programas de alto nivel.
El material necesario para empezar a trabajar con el ensamblador MIPS lo encontrará en el CD-ROM que acompaña al libro.

Aprenda

A programar en lenguaje ensamblador.
Técnicas de desarrollo propias del ensamblador.
Los paradigmas de organización que determinan las capacidades y el rendimiento de las PC.
Las interacciones entre el software y la computadora para que puedan alcanzar los mejores relaciones entre costo y rendimiento



9786077686187


Programación

QA76.9.A73A48 2009

QA76.9A73 A527