miércoles, 27 de febrero de 2019

Unidad No.1- Programas utilizando la documentacion emu8086.inc

Programa No.1: Hola Mundo con print string


Ejecución del programa:


 

Código del programa:
include 'emu8086.inc'
org 100h

.code
printn " " 
printn "hola mundo"


ret

Programa No.2: Hola mundo con gotoxy 


Ejecución del programa:




Código del programa:

include 'emu8086.inc'
org 100h

.code
gotoxy 5,5
printn "hola mundo"


ret

Programa No.3: Hola mundo con putc


Ejecución del programa:




Código del programa:

include 'emu8086.inc'
org 100h

.code
gotoxy 5,5
printn "hola mundo" 
putc 'A'


ret

Programa No. 4: Hola mundo con cursoron


Ejecución del programa:



Código del programa:

include 'emu8086.inc'
org 100h   

.code
gotoxy 5,5
print "hola mundo"
cursoron
call scan_num

define_scan_num

ret

Programa No.5: Hola mundo final


Ejecución del programa:





Código del programa:

name 'hola mundo'
include 'emu8086.inc'

org 100h

.code
gotoxy 5,5
printn "hola mundo"

gotoxy 5,6
printn "hola mundo 2"

gotoxy 5,7
print "dame un numero:"
call scan_num

define_scan_num
putc "A"


ret

Programa No.6: Ejemplo de print_string


Ejecución del programa:



Código del programa:

include 'emu8086.inc'

org 100h

.code    
Cursoroff      ;apaga el cursor
call scan_num  ;pide un numero

define_scan_num  ;define la funcion 
gotoxy 2,5 
putc 'A'   ;imprime un solo caracter
gotoxy 5,7    ;define en donde se ira a la pantalla
print 'dame un numero'
call scan_num   
mov ax,cx 
gotoxy 5,7 
call print_num                   
   
define_print_num 
define_print_num_uns
end
ret

Programa No.7: Hola mundo(pagina de internet)


Ejecución del programa:



Código del programa:

include emu8086.inc

ORG    100h

PRINT 'Hello World!'

GOTOXY 10, 5

PUTC 65           ; 65 - is an ASCII code for 'A'
PUTC 'B'

RET               ; return to operating system.
END               ; directive to stop the compiler.


Programa No.8: Pide tu nombre desde teclado y muestra un mensaje en consola saludandote(pagina de internet) 


Ejecución del programa:



Código del programa:

; demonstrate get_string and print_string
;----------------------------------------
include 'emu8086.inc'
ORG    100h

LEA    SI, msg1       ; set up pointer (SI) to msg
                      ; to ask for the number
CALL   print_string   ; print message that SI points to

LEA    DI, buffer     ; set up pointer (DI) to input buffer
MOV    DX, bufSize    ; set size of buffer
CALL   get_string     ; get name & put in buffer

LEA    SI, newln      ; point at CR/LF / Hello message 
CALL   print_string   ; print message that SI points to

RET                   ; return to operating system.

; data
msg1   DB "Enter your name: ", 0  
newln  DB 13, 10
       DB "Hello, "
buffer DB 20 DUP (0)  ; input buffer for get_string   
bufSize = $-buffer    ; calculates size of buffer

DEFINE_GET_STRING
DEFINE_PRINT_STRING
END                   ; directive to stop the compiler.

Programa No.9: Pide un numero desde teclado y lo muestra en la consola(pagina de internet)

Link del programa: https://drive.google.com/open?id=1E9LDLX1w-SfaVNI0BpHz_CKtrp27CwVx

Ejecución del programa:



Código del programa:

; demonstrate scan_num, print_num, pthis
;----------------------------------------
include 'emu8086.inc'
ORG    100h

LEA    SI, msg1       ; ask for the number
CALL   print_string   ;
CALL   scan_num       ; get number in CX.

MOV    AX, CX         ; copy the number to AX.

; print the following string:
CALL   pthis
DB  13, 10, 'You have entered: ', 0

CALL   print_num      ; print number in AX.

RET                   ; return to operating system.

; data
msg1   DB  'Enter the number: ', 0

; macros to define procs
DEFINE_SCAN_NUM
DEFINE_PRINT_STRING
DEFINE_PRINT_NUM
DEFINE_PRINT_NUM_UNS  ; required for print_num.
DEFINE_PTHIS

END                   ; directive to stop the compiler.

Programa No.10: Suma de dos numeros(ambrocio)


Ejecución del programa:



Código:


; You may customize this and other start-up templates; 
; The location of this template is c:\emu8086\inc\0_com_template.txt

org 100h

name "suma de dos numeros"
include "emu8086.inc"
org 100h

.data
suma db 2 dup (?) ;manera de declarar un arreglo de 2 lugares 
.code
sumas proc
    print " Introduce el primer numero: " ;macro de la lib
    call scan_num ;llamada a un procedimiento para pedir un num
    mov suma[0],cl ;mueve el valor de cl a la posicion 0 del array   
    printn " " ;macro que imprime un espacio 
    print " Introduce el segundo numero: " ;macro que imprime un letrero
    call scan_num ;llamada a un procedimiento para pedir num
    mov suma[1],cl ;;mueve el valor de cl a la posicion 1 del array   
    xor ax,ax ;xor nemonico que limpia registros
    add al,suma[0] ;valor de suma pos 0 
    add al,suma[1] ;valor de suma pos 1
    printn " " ;macro de la libreria pone un espacio y retorno de carro
    print " La suma es: " ;macro que imprime un letrero 
    call print_num ;llamada a un procedimiento para imprimir un num del reg ax
sumas endp
exit:
    print " "
    printn " "
    print "Presiona enter para salir..."
    mov ah,0  ;servicio de pulsación de teclado
    int 16h   ;invoca a servicios de taclado
    ret
define_print_string ;no se uso
define_print_num ;es del print_num
define_print_num_uns ;conversion a decimal del scan_num
define_scan_num ;procedimiento del scan_num
end

ret

Programa No.11: Mayor o menor de edad(ambrocio)



Ejecución:





Programa No.12: Aprobado o reprobado(ambrocio)


Ejecución:














No hay comentarios.:

Publicar un comentario