Proyecto en lenguaje ensamblador
Enviado por Philipgh4 • 6 de Octubre de 2019 • Tarea • 4.572 Palabras (19 Páginas) • 873 Visitas
UNIVERSIDAD AUTÓNOMA DEL BENI
“JOSE BALLIVIÁN”
FACULTAD DE INGENIERÍA Y TECNOLOGÍA
CARRERA DE INGENIERÍA DE SISTEMAS
[pic 1]
PROYECTO FINAL
ASIGNATURA:
ARQUITECTURA DE COMPUTADORAS
DOCENTE:
ING. JOSE LUIS MACHICADO TERAN
UNIV:
SERGIO IVAN ORTIZ CHAO .
LISBETH ABDIA MAMANI ROCA
JAVIER PARADA PEÑA
CRISTHIAN ELMER MOLLERICONA LOPEZ
TRINIDAD-BENI-BOLIVIA
ÍNDICE
Página
- Introducción…………………………………………………………………………3
- Objetivos……………………………………………………………………………..4
- Objetivo general………………………………………………………………..4
- Objetivo específico……………………………………………………………..4
- Marco teórico………………………………………………………………………...4
- El lenguaje ensamblador……………………………………………………...4
- Los registros de la CPU………………………………………………………..4
- Sintaxis del lenguaje ensamblador…………………………………………..5
- Direccionamientos……………………………………………………………...7
- Estructura de un programa…………………………………………………….7
- Desarrollo del proyecto……………………………………………………………....8
- Entorno de desarrollo……………………………………………………………8
- Instrucciones utilizadas………………………………………………………….8
Anexo…………………………………………………………………………………….25
í
- Introducción:
En la actualidad el uso de computadores y/u ordenadores personales es algo muy importante en muchas de las actividades cotidianas que realizamos, desde simples almacenamientos de datos hasta grande procesamientos de éstos y la producción de información significativa.
Hoy en día el uso de los computadores es muy difundido debido a los grandes avances que se han producido desde la producción del primer sistema de procesamientos de datos hasta los grandes y sofisticados equipos con los que contamos en la actualidad.
Los seres humanos interactuamos con el computador a través de la interfaz gráfica y los dispositivos de Entrada/Salida de datos. Esta interacción hombre-máquina se realiza casi de forma tan natural como si se estableciese una comunicación directa entra seres humanos, pero dentro de ordenador se ejecutan miles de millones de instrucciones complejas a muy grandes velocidades que un humano muy difícilmente podría entender y seguir.
Los usuarios finales de una aplicación o un sistema informático pueden interactuar con el computador fácilmente sólo teniendo un conocimiento básico de las funcionalidades (de la aplicación o el sistema informático). Pero detrás de esto se encuentran los desarrolladores o programadores que son los encargados de escribir el código fuente que son las instrucciones que se le dan al ordenador para que ejecute una cierta tarea. El código fuente, en la actualidad puede ser escrito en diversos lenguajes de programación, usando diversos paradigmas y para diversas plataformas. Los actuales y más novedosos lenguajes de programación hacen que la tarea de escritura de código fuente sea mucho más sencilla (e incluso entretenida que al principio de la era informática, ya que estos lenguajes, denominados “de alto nivel”, están mucho más próximo a la comprensión un lenguaje humano a diferencia lenguajes denominados “bajo nivel”.
Para programar (escribir código fuente) en un leguaje de alto nivel, es necesario adquirir conocimientos sobre la lógica del paradigma de programación que empleemos y las sintaxis del lenguaje que elijamos, sin embargo para programar en un lenguaje de bajo nivel como Assembler (lenguaje Ensamblador), es necesario además tener firmes conocimientos sobre la estructura interna de un sistema de procesamiento de datos, ya este lenguaje trabaja exclusivamente con los distintos registros de la CPU.
- Objetivos
- Objetivo general
Mejorar los conocimientos sobre este lenguaje de ensamblador para luego poder desarrollar pequeñas aplicaciones de diferentes componentes tales como controladores de video, teclado y mouse etc.
- Objetivo específico
- Trabajo en modo texto.
- Trabajo en modo gráfico.
- Trabajo con el mouse.
- Realización de un mensaje relativo con respecto al Beni.
- Realización de operaciones aritméticas.
- Marco teórico
- El lenguaje ensamblador
El lenguaje ensamblador o assembler (en inglés assembly language y la abreviación asm), es un lenguaje de programación de bajo nivel. Consiste en un conjunto de mnemónicos que representan instrucciones básicas para los computadores, microprocesadores, microcontroladores y otros circuitos integrados programables. Implementa una representación simbólica de los códigos de máquina binarios y otras constantes necesarias para programar una arquitectura de procesador y constituye la representación más directa del código máquina específico para cada arquitectura legible por un programador.
El programa ensamblador convierte los nombres simbólicos de las instrucciones (Nemónicos) en código máquina. A diferencia de un compilador de lenguaje de alto nivel que genera una serie de instrucciones de máquina por cada instrucción de alto nivel, el ensamblador genera una instrucción de máquina por cada nemónico.
- Registros de la CPU
La CPU x86 tiene 14 registros internos y básicos. Algunos son realmente de 32 bits pero por ahora se utilizará el modo real que es compatible con el procesador 8086(igualmente accesibles a la parte alta de estos registros, inclusive en el modo real). Los registros son los siguientes (estos registros son de 16 bits nombrados de la siguiente manera, a excepción del registro de banderas).
...