SoloCodigo

Programación General => ASM (Ensamblador) => Mensaje iniciado por: elmaster en Domingo 26 de Febrero de 2006, 20:10

Título: Como Cargo Los Numeros
Publicado por: elmaster en Domingo 26 de Febrero de 2006, 20:10
Tengo este programa para hacer y no encuentro por que no sec argan los numeros.Creo que en algun lado esta mal algo......



1) Desarrollar e implementar un programa, que usando
interrupciones del DOS, crea en el disco floppy B: un
archivo de 256 byte conteniendo los numeros 0 a 255
ordenados en forma creciente. El archivo se deberá
crear usando el File Handle correspondiente y se ubicara en
la carpeta Prueba.

.model small
.stack
.data
CR equ 13
LF equ   10


NOMBRE  DB "B:\prueba\archivo.txt",0 ; archivo


Handle DW ? ;guardo el handle
.code
mov ax,@data
mov ds,ax
mov ah,09h
int 21h
mov dx,offset NOMBRE
xor cx,cx
mov ah,3Ch ;creo el archivo con File Handle
int 21h
mov dx,offset NOMBRE
mov al,2 ; leo y escribo
mov ah,3Dh ;abro el archivo
int 21h
mov Handle,ax ;guardo el handle
mov bx,Handle
mov cx,255 ;escribo 255 bytes
mov ah,40h
int 21h
mov bx,Handle
mov ah,3Eh ;cierro el archivo
int 21h
mov ah,09h
int 21h
ReturnToDOS:
mov ax,4C00h ;termino el programa
int 21h
mov ah,09h
int 21h ;call dos service
mov ax,4C01h
int 21h
END


Saludos
Título: Re: Como Cargo Los Numeros
Publicado por: Eternal Idol en Domingo 26 de Febrero de 2006, 21:42
http://www.ctyme.com/intr/rb-2791.htm (http://www.ctyme.com/intr/rb-2791.htm)

¿Donde estas especificando el buffer?
Título: Re: Como Cargo Los Numeros
Publicado por: elmaster en Lunes 27 de Febrero de 2006, 23:36
buffer?? como lo reformo, soy principiante.
Título: Re: Como Cargo Los Numeros
Publicado por: Eternal Idol en Martes 28 de Febrero de 2006, 08:43
Mira en el link que te deje antes, para decirle que escriba unos datos determinados tenes que cargarlos en memoria, podes usar una variable tambien:

NUMEROS DB "0123456", 0 ;ETC

La otra opcion que supongo sera la que te piden en esta tarea escolar es que crees una par de funciones como ltoa (http://www.cplusplus.com/ref/cstdlib/ltoa.html (http://www.cplusplus.com/ref/cstdlib/ltoa.html)) y write, asi mediante un bucle podrias automatizar la escritura de los numeros.