Entradas

Sin libreria emu8086

Programa que lea 2 numeros y muestre la multiplicacion del primer numero por 10 y el segundo lo multiplica por cinco         .data ;segmento Data msg db 13,10,"Ingrese el primer numero $" msg2 db 13,10,"Ingrese el segundo numero $" msg1 db 13,10,"El resultado mult por 10 es :$" diez db 10 ;una variable con valor de 10 cinco db 5 ;una variable con valor de 5 num1 db 0 .code ;segmento de codigo del programa MOV AX,@DATA MOV DS,AX ;Para desplegar el mensaje 1: MOV AH,09 lea DX,msg int 21h MOV AH,01 int 21h mul diez aam mov ah,02 int 21h ;MOV num1,AX MOV AX,@DATA MOV DS,AX ;Para desplegar el mensaje 2: MOV AH,09 lea DX,msg2 int 21h MOV AH,01 int 21h mul cinco aam mov ah,02 int 21h end        

Mi primer programa con la librería emu8086

Unidad 3 Programa en Emu8086 que ingresando 2 valores multiplica por 5 el primero y por 10 el segundo y muestre el resultado, usando la librería emu8086 código del programa: org 100h include 'emu8086.inc' .data numeros db 2 dup (?) ;creacion de un arreglo cad2 dw ? msg dw "Multiplicacion por 10: $" msg2 dw "Multiplicacion por 5: $" .code print 'Ingresa el primer numero:' call scan_num mov numeros[0],cl printn "" print 'Ingresa el segundo numero:' call scan_num mov numeros[1],cl //multi: xor ax,ax mov al,numeros[0] mov bl,10 mul bl printn "" mov bx, ax mov ah,09 lea dx,msg int 21h mov ax, bx printn "" call PRINT_NUM xor ax,ax mov al,numeros[1] mov bl,5 mul bl printn "" mov bx, ax mov ah,09 lea dx,msg2 int 21h mov ax, bx printn "" call PRINT_NUM ret define_print_num define_scan_num define_print_num_uns define_print_string define_get_string end

Segundo programa en emu8086 calificación aprobatoria o reprobatoria

Imagen
Unidad 3 Programa en Emu8086 que determina ingresando en consola un número si tu calificación es aprobatoria o reprobatoria. Código del programa: org 100h .model small .stack 64 .data ;seccion de variables msg1 db "Dame una calificacion (seguida de un enter):$" aprobado db 13,10, "Aprobado$" ;13 es salto de linea y 10 es salto de carro reprobado db 13,10, "Reprobado$" var1 dw ?,"$" ;variable data write var2 dw ?,"$" var3 dw ?,"$" .code ;inicia el segmento de codigo resultado proc far ;declaracion de funcion mov ax, @data ;como inicio mov ds, ax ;------------desplegar primer mensaje mov ah,09 ;inicio de mensaje lea dx,msg1 int 21h ;------------pedir un caracter mov ah,01 int 21h ;parpadea el cursor mov var1,ax ;------------pedir segundo caracter mov ah,01 int 21h ;parpadea el cursor mov var2,ax ;------------pedir un caracter

Publicar código de programación en Blogger

Imagen
Seguro que muchos de nosotros hemos querido poner código de algún lenguaje de programación en Blogger para que se vea de una forma llamativa, con formato, resaltado en colores y demás. Pues la mala noticia es que en Blogger no se puede hacer esto por defecto, pero podemos arreglarlo con  SyntaxHighlighter . SyntaxHighlighter es un resaltador de código desarrollado en JavaScipt y es código libre. Como en Blogger no se pueden subir archivos usaremos su versión online. En primer lugar accedemos a la sección  Plantilla  y pinchamos en  Editar HTML : Ahora tenemos que insertar el siguiente código dentro de la etiqueta  <head> .Los script que añado son  para poder insertar un determinado lenguaje de programación, es decir, cada script que hay sirve para poder insertar código de un lenguaje determinado.

Lenguaje ensamblador Unidad 3

Imagen
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. Cada  arquitectura de procesador  tiene su propio lenguaje ensamblador que usualmente es definida por el fabricante de  hardware , y está basada en los  mnemónicos  que simbolizan los pasos de procesamiento (las  instrucciones ), los  registros  del procesador, las posiciones de  memoria  y otras características del lenguaje.

Ventajas y desventajas de lenguaje ensamblador

Una vez que hemos visto la  evolución  de los lenguajes, cabe preguntarse: ¿En estos tiempos "modernos", para qué quiero el Lenguaje Ensamblador? El  proceso  de evolución trajo consigo algunas desventajas, que ahora veremos como las ventajas de usar el Lenguaje Ensamblador, respecto a un lenguaje de alto nivel: Eficiencia de tamaño. Flexibilidad. Por otro lado, al ser un lenguaje más primitivo, el Ensamblador tiene ciertas desventajas respecto a los lenguajes de alto nivel: Tiempo de programación. Programas fuente grandes. Peligro de afectar recursos inesperadamente. Falta de portabilidad. Velocidad El proceso de traducción que realizan los intérpretes, implica un proceso de cómputo adicional al que el programador quiere realizar. Por ello, nos encontraremos con que un intérprete es siempre más lento que realizar la misma  acción  en  Lenguaje Ensamblador , simplemente porque tiene el  costo  adicional de estar traduciendo el  programa , cada vez que lo ej

Interrupciones

¿Qué es una interrupción? Una interrupción es una situación especial que suspende la ejecución de un programa de modo que el sistema pueda realizar una acción para tratarla. Tal situación se da, por ejemplo, cuando un periférico requiere la atención del procesador para realizar una operación de E/S. Interrupción 21H Propósito: Llamar a diversas funciones del DOS. Funciones para desplegar información al video   02H Exhibe salida 09H Impresión de cadena (video) 40H Escritura en dispositivo/Archivo Funciones para leer información del teclado 01H Entrada desde teclado 0AH Entrada desde teclado usando buffer 3FH Lectura desde dispositivo/archivo Método FCB 0FH Abrir archivo 14H Lectura secuencial 15H Escritura secuencial 16H Crear archivo 21H Lectura aleatoria 22H Escritura aleatoria Handles 3CH Crear archivo 3DH Abrir archivo 3EH Cierra manejador de archivo 3FH Lectura desde archivo/dispositivo 40H Escritura en archivo/dispositivo 42H Mover apuntador de lectura/escritura en archivo Fun