1
계승을 계산하는 프로그램을 작성하려고하지만 inttostring 기능 때문에이 코드가 무한 루프로 연결됩니다. 나는 문제가 DIV의 기능이라고 생각하지만 난 솔루션 당신은 분할을하기 전에 EDX를 삭제해야조립식 팩토리얼 x86 (Ubuntu의 NASM)
section .text
global _start
_start:
inc eax
mov ebx, 2
mov ecx, 3
jmp count
count:
imul eax, ebx
cmp ebx, ecx
je inttostring
inc ebx
jmp count
inttostring:
mov ebx, 10
mov esi, 3
div ebx
add [result+esi], dl
dec esi
cmp esi, 0
je displey
jmp inttostring
displey:
mov eax, 4
mov ebx, 1 mov ecx, result
mov edx, size
int 80h
mov eax, 1 int 80h
section .data
result times 4 db 48
size equ $ - result