Попытка понять, как работать с файлами на ассемблере (редактор notepad ++) - PullRequest
0 голосов
/ 27 декабря 2018

Я начал изучать ассемблер, и теперь я пытаюсь кое-что, с чем я действительно не могу справиться.У меня есть номер «nr» в шестнадцатеричном формате, и я хочу записать его цифры в файл «test.txt», разделенный «разделителем».OllyDebuger не очень мне помог. Он пишет странные символы в этом файле. Пожалуйста, помогите советом обновить этот код

segment data use32 class=data
    filename db "test.txt", 0  
    acces_mode db "w", 0          
    nr dd 0ABCh                           
    descriptor_file dd -1         
    separator db "/",0
    digit dd "%d"
; our code starts here
segment code use32 class=code
    start:

        push dword acces_mode     
        push dword filename
        call [fopen]
        add esp, 4*2               

        mov [descriptor_file], eax  

        cmp eax, 0
        je final

        mov ecx,0
        mov eax,[nr]
        repetitive:
            mov ebx,eax
            and ebx,00000000000000000000000000001111b

            mov [digit],ebx
            push eax

            push dword digit
            push dword [descriptor_file]
            call [fprintf]
            add esp, 4*2


            push dword separator
            push dword [descriptor_file]
            call [fprintf]
            add esp, 4*2

            pop eax
        shr eax,4
        mov ecx,eax
        add ecx,1
        loop repetitive


        push dword [descriptor_file]
        call [fclose]
        add esp, 4
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...