Tyler Littlefield wrote:
> I'm rather new to asm, and started playing around.
> The purpose of write is to write the string char by char. any ideas why this 
> wouldn't be working? I'm not totally sure how to debug it. it just runs and 
> stopps--I finally got past the seg fault:
> section .data
> buff db "Hello world!",10,0
> section .text
> global _start:
> _start:
> mov eax,buff
> call write
> call exit
> hlt
> 
> write:
> mov esi,eax
> ;we'll get the other three registers set up so we don't have to keep setting 
> those:
> mov eax,4
> mov ebx,1
> mov edx,1
> loop:
> mov ecx,[esi]
> cmp ecx,0
> je end
> inc esi
> int 80h
> jmp loop
> end:
> ret
> 
> exit:
> mov eax,1
> mov ebx,1
> int 80h
> ret
> 
> Thanks,
> Tyler Littlefield
> email: [EMAIL PROTECTED]
> web: tysdomain-com
> Visit for quality software and web design.
> skype: st8amnd2005

Instead of guessing, why don't you first write the program in C and then 
use the compiler to generate raw assembler code (most compilers have a 
switch to do this).  Then stare at the generated code, compare to yours, 
and that should solve the problem.

Besides, every compiler treats assembler differently.  You didn't 
mention yours.

-- 
Thomas Hruska
CubicleSoft President
Ph: 517-803-4197

*NEW* MyTaskFocus 1.1
Get on task.  Stay on task.

http://www.CubicleSoft.com/MyTaskFocus/

Reply via email to