forked from blau_araujo/pbn
diretórios 8 e 13 de exemplos
This commit is contained in:
parent
62338a8185
commit
6fbe5f3a62
13 changed files with 820 additions and 0 deletions
|
@ -1,58 +0,0 @@
|
|||
; Chamadas de sistema...
|
||||
%define SYS_WRITE 1
|
||||
%define SYS_OPEN 2
|
||||
%define SYS_CLOSE 3
|
||||
%define SYS_DUP2 33
|
||||
%define SYS_EXIT 60
|
||||
|
||||
; Flags da chamada SYS_OPEN...
|
||||
%define O_WRONLY 0x1 ; apenas para escrita
|
||||
%define O_CREAT 0x40 ; cria se não existir
|
||||
%define O_TRUNC 0x200 ; trunca conteúdo existente
|
||||
|
||||
; Permissões do arquivo criado...
|
||||
%define F_MODE 0o644
|
||||
|
||||
; Descritores de arquivos...
|
||||
%define STDOUT 1
|
||||
|
||||
section .rodata
|
||||
file db "mensagem.txt", 0 ; arquivo de destino
|
||||
msg db "Salve, simpatia!", 10 ; Mensagem
|
||||
len equ $ - msg ; Tamanho da mensagem
|
||||
|
||||
section .text
|
||||
global _start
|
||||
|
||||
_start:
|
||||
; open (ARQUIVO, FLAGS, MODO)
|
||||
mov rax, SYS_OPEN
|
||||
mov rdi, file
|
||||
mov rsi, O_WRONLY | O_CREAT | O_TRUNC
|
||||
mov rdx, F_MODE
|
||||
syscall
|
||||
|
||||
mov r12, rax ; salvar descritor de arquivo retornado
|
||||
|
||||
; dup2(ANTIGO_FD, NOVO_FD)
|
||||
mov rax, SYS_DUP2
|
||||
mov rdi, r12
|
||||
mov rsi, STDOUT
|
||||
syscall
|
||||
|
||||
; write(FD, STRING, SIZE)
|
||||
mov rax, SYS_WRITE
|
||||
mov rdi, STDOUT
|
||||
mov rsi, msg
|
||||
mov rdx, len
|
||||
syscall
|
||||
|
||||
; close(FD)
|
||||
mov rax, SYS_CLOSE
|
||||
mov rdi, r12
|
||||
syscall
|
||||
|
||||
; exit(STATUS)
|
||||
mov rax, SYS_EXIT
|
||||
xor rdi, rdi
|
||||
syscall
|
Loading…
Add table
Add a link
Reference in a new issue