【发布时间】:2016-01-17 20:58:03
【问题描述】:
global _start
section .data
var dq 12494F04A6344129h
msg db "The number of times 4 present in the given number"
len equ $-msg
novar db 00
section .bss
section .text
mov dl,0Ah
mov cl,10
_start :
mov rsi,var
up: mov al,byte ptr [rsi]
mov ah,00
div dl
cmp ah,04
je dn
jne dn1
dn: inc byte[novar]
dn1: inc rsi
dec cl
jne up
jmp exit
exit: mov eax,4
mov ebx,1
mov ecx,msg
mov edx,len
int 80h
mov eax,4
mov ebx,1
mov ecx,novar
mov edx,1
int 80h
mov eax,1
mov ebx,0
int 80h
【问题讨论】:
-
您能否提供更多关于这发生在何处以及如何发生的背景信息?
-
您是否尝试过使用调试器?请注意,如果
exit是下一条指令上的标签,则不需要jmp exit。你不需要mov edx, [len]而不是mov edx, len吗?您希望edx是存储在len的值还是len本身的值(标签的地址)?