Desarrollo de Software en C++, C#, PHP,JavaScript, Matlab, Java, Android, Arduino, Python, Flutter, React, Vue, Solución de ejercicios, Programas informáticos, Inteligencia Artificial.

Buscar

Operaciones Aritméticas en Assembler con emu8086

¿ Qué es el Lenguaje Ensamblador ?

El ensamblador (en inglés, Assembler o Assembly, que se suele abreviar como Asm) es un lenguaje de programación de ordenadores de bajo nivel (muy cercano al código máquina), por lo que es específico de cada tipo de ordenador (básicamente, de cada procesador). Es más difícil de aprender que los lenguajes de alto nivel, resulta mucho menos legible, y prácticamente no es portable, pero si se domina, es el que dará la mayor velocidad a nuestro programa. 

Características del código ensamblador: 

El código escrito en lenguaje ensamblador posee una cierta dificultad de ser entendido ya que su estructura se acerca al lenguaje máquina, es decir, es un lenguaje de bajo nivel. 
Los programas hechos, por un programador experto, en lenguaje ensamblador, son generalmente mucho más rápidos y consumen menos recursos del sistema (memoria RAM y ROM.)- (utilizados en programación de juegos) 
Con el lenguaje ensamblador se tiene un control muy preciso de las tareas realizadas por un microprocesador ya que, se dispone de instrucciones del CPU que generalmente no están en los lenguajes de alto nivel.


OPERACIONES ARITMÉTICAS BÁSICAS EN EL LENGUAJE ENSAMBLADOR
CON EMU8086

 .model small

.stack 64 .data ;declarando variables globales numero1 db 0 numero2 db 0 suma db 0 resta db 0 multiplicacion db 0 division db 0 modulo db 0 msjn1 db 10,13, "Ingrese el primer numero= ",'$';ingrese n1 msjn2 db 10,13, "Ingrese el segundo numero= ",'$';ingrese n2 ;mensaje para mostrar los resultados msjnS db 10,13, "La suma es= ",'$' msjnR db 10,13, "La resta= ",'$' msjnM db 10,13, "La Multiplicacion es= ",'$' msjnD db 10,13, "La division es = ",'$' msjnMod db 10,13, "El modulo es = ",'$' .code begin proc far ;direccionamiento del procedimiento mov ax, @data mov ds,ax ;solicitar del teclado numero 1 mov ah, 09 lea dx, msjn1 int 21h mov ah, 01 int 21h sub al, 30h mov numero1,al ;solicitar del teclado numero 2 mov ah, 09 lea dx, msjn2 int 21h mov ah, 01 int 21h sub al, 30h mov numero2,al ;operaciones aritmeticas ;SUMA mov al,numero1 add al,numero2 mov suma,al ;RESTA mov al,numero1 sub al,numero2 mov resta,al ;MULTIPLICACION mov al,numero1 mul numero2 mov multiplicacion,al ;DIVISION mov al,numero1 div numero2 mov division,al ;MODULO mov al, numero1 div numero2 mov modulo,ah ;Mostrar los mensajes de los resultados ;mostrando la suma mov ah,09 lea dx,msjnS int 21h mov dl,suma add dl,30h mov ah,02 int 21h ;mostrando la resta mov ah,09 lea dx,msjnR int 21h mov dl,resta add dl,30h mov ah,02 int 21h ;mostrando la multiplicacion mov ah,09 lea dx,msjnM int 21h mov dl,multiplicacion add dl,30h mov ah,02 int 21h ;mostrando la division mov ah,09 lea dx,msjnD int 21h mov dl,division add dl,30h mov ah,02 int 21h ;mostrando el modulo mov ah,09 lea dx,msjnMod int 21h mov dl,modulo add dl,30h mov ah,02 int 21h ;cierre del programa mov ah,4ch int 21h begin endp end
Share:

5 comentarios:

  1. ES MUY BUENO QUE PUBLIQUEN LOS CÓDIGOS PARA HACER EN EL EMULADOR

    ResponderEliminar
  2. Buenas pero si dos con dos bits es decir 12*24 que se modifica

    ResponderEliminar
  3. COMO HACER PARA PODER HACER UN BUCLE PARA REALIZAR VARIAS OPERACIONES?, XQ DE ESA MANERA SOLO PUEDO REALIZAR UNA SOLA OPERACIÓN... DESDE YA MUCHAS GRACIAS

    ResponderEliminar
  4. requiero saber sobre este salto. el JGE en assembler, quiero digitar cualquier numero, pero el unico detalle es al momento de comparar si es mayor o igual a 6 se gana un obsequio, pero si es diferente de 6, por ejemplo 5,4, etc.. pierde puntos.

    ResponderEliminar

DISCULPA LAS MOLESTIAS, LA PUBLICIDAD NOS AYUDA

Para descargar Aguarda 5 seg. y luego hacer click en saltar publicidad...Gracias !!

Saltar Publicidad

Translate

FACEBOOK

Ayúdanos con tu donación !

Etiquetas

twitter.com

Páginas vistas

Labels