Microprocessor/Codes/org-pen/Practical-9/macro.asm

58 lines
699 B
NASM
Raw Permalink Normal View History

;macro.asm
%macro read 2
mov rax,0 ;read
mov rdi,0
mov rsi,%1
mov rdx,%2
syscall
%endmacro
%macro print 2
mov rax,1
mov rdi,1
mov rsi,%1
mov rdx,%2
syscall
%endmacro
%macro fopen 1
mov rax,2 ;open
mov rdi,%1 ;filename
mov rsi,2 ;mode RW
mov rdx,0777o ;File permissions(Read-4,Write-2,Execute-1)
syscall
%endmacro
%macro fread 3
mov rax,0 ;read
mov rdi,%1 ;filehandle
mov rsi,%2 ;buf
mov rdx,%3 ;buf_len
syscall
%endmacro
%macro fwrite 3
mov rax,0 ;write
mov rdi,%1 ;filehandle
mov rsi,%2 ;buf
mov rdx,%3 ;buf_len
syscall
%endmacro
%macro fclose 1
mov rax,3 ;close
mov rdi,%1;file handle
syscall
%endmacro
%macro exit 0
print nline,nline_len
mov rax,60
mov rdi,0
syscall
%endmacro