Foro de elhacker.net

Programación => ASM => Mensaje iniciado por: Vaagish en 2 Mayo 2013, 23:45 pm



Título: Ayuda con interrupciones..
Publicado por: Vaagish en 2 Mayo 2013, 23:45 pm
Hola amigos, espero anden bien..
Me quede trancado con algo bien simple.. :/
Por que puede ser que no funcionen las interrupciones del DOS ?? No puedo imprimir una cadena en la pantalla con 21h

Gracias y Saludos!


Título: Re: Ayuda con interrupciones..
Publicado por: x64core en 3 Mayo 2013, 06:04 am
Hola


   assume   cs:cseg,ds:dseg,ss:sseg

cseg   segment
start:
   mov   ax, dseg
   mov   ds, ax
   mov   dx, offset msg
   mov   ah, 09h
   int   21h
   mov   ax, 4C00h
   int   21h
cseg   ends

dseg   segment   byte
msg   db   'hey!',0Dh,0Ah,'$'
dseg   ends

sseg   segment   stack
   db   100h dup(?)
sseg   ends

   end   start


Ensamblar... ahora cual es el problema? entorno de 64-bits?


Título: Re: Ayuda con interrupciones..
Publicado por: Vaagish en 3 Mayo 2013, 18:52 pm
No se si tengo que declarar algo antes.. o que.. en un rato pruebo eso a ver en que estoy errando..

si pongo por ejemplo... no se.. cualquier cosa asi:

.data

Msg db "Hola mundo", 0

.code
inicio:

mov dx, offset Msg
mov ah, 09h
int 21h

end inicio

No funciona... :/


Título: Re: Ayuda con interrupciones..
Publicado por: x64core en 3 Mayo 2013, 19:38 pm
Un exe de 16 bits...

dependiendo de que tipo de ejecutable quieres generar se agrega:
.model tipo
[.stack xxh]

Leer este libro:
http://www.amazon.com/Windows-Assembly-Language-Systems-Programming/dp/087930474X/ref=sr_1_1?s=books&ie=UTF8&qid=1367602645&sr=1-1&keywords=assembly+language+16+bits

o alguna vieja version del libro de K. irvine.


Título: Re: Ayuda con interrupciones..
Publicado por: Vaagish en 3 Mayo 2013, 19:42 pm
Haaa... Me parecia si que habia algo de eso.. recuerdo haber leido que no funcionaba en todos los "modos" si se puede decir asi..
Bueno, entonces seguramente debo implementar alguna rutina mia, no ? Pero.. como envio el texto a la consola ?

Gracias!!


Título: Re: Ayuda con interrupciones..
Publicado por: x64core en 3 Mayo 2013, 20:16 pm
Haaa... Me parecia si que habia algo de eso.. recuerdo haber leido que no funcionaba en todos los "modos" si se puede decir asi..
Bueno, entonces seguramente debo implementar alguna rutina mia, no ? Pero.. como envio el texto a la consola ?

Gracias!!

Sí, debes de leer para saber como funciona.
Y para las interrupciones: http://www.ctyme.com/intr/int.htm