Skip to contentSkip to conversation

jump_code

DISCUSSION ssams 2 participants 2 messages Sep 6, 2002

lore
Share & tools
lore

ssams

author
#0 lore raw

I build this code , iget output but i little bug ithink. i hope some body be correct it..

.data
msg1: .ascii "Mencetak Saya\n"
msg2: .ascii "\nKok saya dilompati sih\n"
msg2_len: .long .-msg2
msg3: .ascii "Hai ini pesen ketiga "
msg3_len: .long .-msg3

.text
.globl _start
_start:

	mov $4,%eax
	mov $1,%ebx
	mov $msg1,%ecx
	mov $14,%edx
	int $0x80

	jmp pesan3
pesan2:
	mov $4,%eax
	mov $1,%ebx
	mov $msg2,%ecx
	sub $24,%edx
	int $0x80

	mov $1,%eax
	xor %edx,%edx
	xor %ecx,%ecx
	int $0x80
pesan3:
	mov $3,%ecx
   ulang:
	  push %ecx

	mov $4,%eax
	mov $1,%ebx
	mov $msg3,%ecx
	sub $21,%edx
	int $0x80
	pop %ecx
	dec %ecx
	jnz ulang
	jmp pesan2

Output
Mencetak Saya
Hai ini pesen ketiga
Hai ini pesen ketiga
Hai ini pesen ketiga
Kok saya dilompati sih
Hai ini pesen ketiga

my questio is ..
why the third message is printing for one again in the end
of output
althought no instruction point it..?
--------------------- Yang Mudah dan Menghibur ----------------------------

Hosting menjadi mudah dan murah hanya di PlasaCom. Klik http://idc.plasa.com

F1 Mania!! Ikuti F1 Game di Obelix Game Corner di http://www.plasa.com/infotel/f1.html

---------------------------------------------------------------------------------------

#1 lore raw

You have wrong value in edx register when calling kernel's write routine!

Quoted 13 lines

I build this code , iget output but i little bug ithink. i hope some body be correct it..

.data
msg1: .ascii "Mencetak Saya\n"
msg2: .ascii "\nKok saya dilompati sih\n"
msg2_len: .long .-msg2
msg3: .ascii "Hai ini pesen ketiga "
msg3_len: .long .-msg3

.text
.globl _start
_start:

Quoted 12 lines
        mov $4,%eax
        mov $1,%ebx
        mov $msg1,%ecx
        mov $14,%edx
        int $0x80

        jmp pesan3
pesan2:
        mov $4,%eax
        mov $1,%ebx
        mov $msg2,%ecx
        sub $24,%edx

Change "sub $24,%edx" to "mov msg2_len,%edx".

Quoted 7 lines
        int $0x80

        mov $1,%eax
        xor %edx,%edx
        xor %ecx,%ecx
        int $0x80

pesan3:

Quoted 8 lines
        mov $3,%ecx
   ulang:
          push %ecx

        mov $4,%eax
        mov $1,%ebx
        mov $msg3,%ecx
        sub $21,%edx

Change "sub $21,%edx" to "mov msg3_len,%edx".

Quoted 14 lines
        int $0x80
        pop %ecx
        dec %ecx
        jnz ulang
        jmp pesan2

Output
Mencetak Saya
Hai ini pesen ketiga
Hai ini pesen ketiga
Hai ini pesen ketiga
Kok saya dilompati sih
Hai ini pesen ketiga

Quoted 4 lines

my questio is ..
why the third message is printing for one again in the end of output
althought no instruction point it..?

Regards,

Signature · 1 line
Maciej Hrebien