Calculadora Basica Assembler

Páginas: 9 (2070 palabras) Publicado: 24 de julio de 2011
Universidad Mariano Gálvez de Guatemala
Ingeniería en Sistemas
Simulación y Modelación
Ing. Enrique Blanco

Calculadora Basica

Edgar Estuardo Navas Valiente
0901-08-4032
Guatemala 20 de Julio del 2011

Computadora Básica

Este programa fue elaborado con la herramienta Assembler 8086 que es un lenguaje de programación basado en memoria o recursos de memoria. Este programa es eldiseño de una calculadora básica con sus funciones como suma +, resta -, multiplicación * y división /.

El programa esta diseñado con la operación de 2 números es decir: de esta manera después automáticamente despliega el resultado según el operador.

A continuación el código fuente del Programa:

;Autor Edgar Navas

;+-----------------------------------+
;| Programa que realiza la suma,|
;| resta, multiplicación o división |
;| de dos numeros del 0 al 9 |
;| |
;+-----------------------------------+

.model small
.stack 100h
.data
ms db 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,13,' ---> s para salir',10,13,' ---> c para borrar',10,10,13,'----------CALCULADORA---------$'
lin1 db 10,13,' +---------------------------+$'
lin2 db 10,13,' | |$' ;Se define la interfaz grafica
lin3 db 10,13,' | |$'
lin4 db 10,13,' | Insertar 2 Numeros |$'
lin5 db 10,13,' | De manera |$'
lin6 db 10,13,' ||$'
lin7 db 10,13,' | |$'
lin8 db 10,13,' | |$'
lin9 db 10,13,' | |$'
lin10 db 10,13,' | |$'
lin11 db 10,13,' | |$'
lin12 db 10,13,' | |$';Cada uno de los supuestos botones realiza algo
lin13 db 10,13,' | |$' ;Al presionar 'c' --> "limpia pantalla" y vuelve a iniciar
lin14 db 10,13,' +---------------------------+$' ;Al presionar 's' --> Sale del programa
lin15 db 10,13,' Expresion: $'
msg1 db 10,13,' Resultado: $'
resi db 'residuo> $' ;Si hay residuo imprimimos el mensaje
;msg2 db ;10,13,' Resultado en Binario: $'
msg3 db 10,13,'****ERROR EN LA EXPRESION... LA MANERA CORRECTA: ',10,13,'Presiona una tecla para continuar...$'
b db ? ;Variable bandera
e db ? ;Variable utilizada para error o borrar
v1 db ? ;variable que almacena el primer numero
v2 db ?;variable que almacena el segundo numero
op db ? ;variable que almacena el operador

.code
main proc
mov ax,@data
mov ds,ax
menu1: call menu ;Mandamos llamar al procedimiento menu

mov b,0 ;Inicializamos nuestras variables
mov e,0

call leecar ;Mandamos llamar al procedimiento leecar el cual lee un caracter
cmp al,'s';Comparamos el caracter leido con 's'
je prefin ;Si es igual salimos del programa
cmp e,1 ;Comparamos la variable e con 1
je menu1 ;Si es igual quiere decir que hay error y saltamos a menu1
mov v1,al ;Almacenamos el numero leido en la variable v1

mov b,1 ;Cambiamos el estado de nuestra banderacall leecar ;Mandamos llamar al procedimiento leecar el cual lee un caracter
cmp al,'s' ;Comparamos el caracter leido con 's'
je prefin ;Si es igual salimos del programa
cmp e,1 ;Comparamos la variable e con 1
je menu1 ;Si es igual quiere decir que hay error y saltamos a menu1
mov op,al...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Calculadora En Assembler
  • Calculadora, Assembler, Linux
  • Ejercicios básicos de assembler
  • Calculadora basica
  • Calculadora En Visual Basic
  • Cálculo Básico De Alumbrado
  • Calculos basicos matlab
  • Calculadora en visual basic

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS