
Ayuda para mostrar un archivo BMP en assembler
Publicado por dairys (1 intervención) el 21/02/2015 06:13:31
buenas !!!
necesito ayuda. tengo que hacer un programa en ensamblador que lea / muestre un archivo en formato BMP.
estoy usando las interrupciones 21h y 10h.
estuve investigando sobre el formato pero no entiendo como "escribir" las instrucciones en el .CODE
les adjunto un archivo.asm que es un programa que crea un archivo y escribe en el, luego muestra en pantalla. ahí voy mas o menos. helpppp please !!!!
org 100h
mov al, 0 ;modo de acceso para abrir arhivo, modo lectura/escritura
mov dx, offset archivo ;offset lugar de memoria donde esta la variable
mov ah, 3dh ;se intenta abrir el archivo
int 21h ;llamada a la interrupcion DOS
jc error ; si se prendio la bandera c ir a error
mov handle, ax ;si no paso mover a lo que le dio el SO
jmp leer
error:
; ....
;leer archivo
leer:
mov bx, handle
mov cx, 5
mov dx, offset leido
mov ah, 3fh
int 21h
;cerramos archivo
mov bx, handle
mov ah, 3eh
int 21h
;imprimir el contenido de leido
mov dx, offset leido
mov ah, 9
int 21h
ret
archivo db "C:\prueba.txt", 0 ;ascii del nombre del archivo
leido db "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
handle dw ? ;identificador del arhivo
necesito ayuda. tengo que hacer un programa en ensamblador que lea / muestre un archivo en formato BMP.
estoy usando las interrupciones 21h y 10h.
estuve investigando sobre el formato pero no entiendo como "escribir" las instrucciones en el .CODE
les adjunto un archivo.asm que es un programa que crea un archivo y escribe en el, luego muestra en pantalla. ahí voy mas o menos. helpppp please !!!!
org 100h
mov al, 0 ;modo de acceso para abrir arhivo, modo lectura/escritura
mov dx, offset archivo ;offset lugar de memoria donde esta la variable
mov ah, 3dh ;se intenta abrir el archivo
int 21h ;llamada a la interrupcion DOS
jc error ; si se prendio la bandera c ir a error
mov handle, ax ;si no paso mover a lo que le dio el SO
jmp leer
error:
; ....
;leer archivo
leer:
mov bx, handle
mov cx, 5
mov dx, offset leido
mov ah, 3fh
int 21h
;cerramos archivo
mov bx, handle
mov ah, 3eh
int 21h
;imprimir el contenido de leido
mov dx, offset leido
mov ah, 9
int 21h
ret
archivo db "C:\prueba.txt", 0 ;ascii del nombre del archivo
leido db "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
handle dw ? ;identificador del arhivo
Valora esta pregunta


0