如何检查文件是否打开并通过读取文件中的字节返回值

时间:2019-04-09 03:20:56

标签: linux assembly x86 nasm

我正在学习Linux中32位处理器的汇编语言。我的任务是创建一个代码,该代码通过读取名为“ / dev / urandom”的文件中的字节来生成0到255之间的数字,然后我需要将生成的数字与用户输入进行比较。 这是我的代码:

segment .data
msg:        db "Enter number between 255 et 0 :"
len:        equ $-msg
nom_fic:    db "/dev/urandom", 0    

segment .bss
choix:  resb 17         ;choice and return 
len_choix:  resb 1
buffer: dd 0

segment .text
    global _start       ; 
_start:
;;; Open file
    mov eax, 5      ; to open file
    mov ebx, nom_fic    ; file name
    mov ecx, 0      ; options
    int 0x80        ; interrupt
        push eax        ; push to stack
;;; Read file
    mov eax, 3
    pop eax         ;
    mov ebx, eax        ;
    mov ecx, buffer
    mov ebx,1
    int 0x80
;;; Close file
    mov eax, 6      ; 
    int 0x80

;;; Exit
    mov eax, 1      ; 
    mov ebx, 0      ; 
    int 0x80        ; 

0 个答案:

没有答案