Ir para conteúdo
  • Cadastre-se
Entre para seguir isso  
Lincoln Arantes

Registradores Assembly

Posts Recomendados

Explicação de Lincoln Cesar dos  Reis Arantes sobre registradores Assembly x86. Espero que gostem.

https://www.youtube.com/watch?v=aGulNiuYgBs

 

Formação:

Curso Superior de Analista de Sistema pela Unicesumar .

 

 

  • Agradecer 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz esse código hj de manhã, alguém capaz de me dizer o que pode ser melhorado

 

  1. section .text
  2.     global _start       ;must be declared for using gcc
  3. _start:   ;tell linker entry point
  4.    
  5.    
  6.  
  7.  
  8.     mov eax, '10' ;numero inicial
  9.     mov ebx, '20' ;numero inicial
  10.    
  11.     ; codigos que fazem a troca
  12.     mov [var], eax
  13.     mov eax, ebx
  14.     mov ebx, [var]
  15.  
  16.    
  17.      mov [var2], eax
  18.      mov [var3], ebx
  19.  
  20.  
  21.    ; primeira mensagem
  22.    
  23.     mov eax, 4    ; sys_write system call
  24.     mov ebx, 1    ; stdout file descriptor
  25.     mov ecx, msg  ; bytes to write
  26.     mov edx, len    ; number of bytes to write
  27.     int 0x80      ; perform system call
  28.  
  29.  
  30.  
  31.   ;printa na tela o resultado da eax
  32.     mov eax, 4    ; sys_write system call
  33.     mov ebx, 1    ; stdout file descriptor
  34.     mov ecx, var2  ; bytes to write
  35.     mov edx, 7    ; number of bytes to write
  36.     int 0x80      ; perform system call
  37.  
  38.  
  39.  
  40.   ; primeira mensagem
  41.    
  42.     mov eax, 4    ; sys_write system call
  43.     mov ebx, 1    ; stdout file descriptor
  44.     mov ecx, msg2  ; bytes to write
  45.     mov edx, len2    ; number of bytes to write
  46.     int 0x80      ; perform system call
  47.  
  48.  
  49.  
  50.   ;printa na tela o resultado da ebx
  51.  
  52.     mov eax, 4    ; sys_write system call
  53.     mov ebx, 1    ; stdout file descriptor
  54.     mov ecx, var3  ; bytes to write
  55.     mov edx, 7    ; number of bytes to write
  56.     int 0x80      ; perform system call
  57.  
  58.  
  59.  
  60.  
  61.    ;saída
  62.  
  63.     mov eax, 1      ;system call number (sys_exit)
  64.     int 0x80        ;call kernel
  65.  
  66. section .data
  67.  
  68. msg db  'O valor trocado da eax agora é: ' ;our dear string
  69. len equ $ - msg         ;length of our dear string
  70.  
  71. msg2    db  0xa,'O valor trocado da ebx agora é: '   ;our dear string
  72. len2    equ $ - msg2            ;length of our dear string
  73.  
  74.  
  75. section .bss
  76.  
  77. var resb 10
  78. var2 resb 10
  79. var3 resb 10
  • Agradecer 1
  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons no total são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

Entre para seguir isso  

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...