Pular para o conteúdo

vocês poderiam me explicar esse código de Assembly ? [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. vocês poderiam me explicar esse código de Assembly ? [RESOLVIDO]

Enviado em 05/09/2013 - 16:27h

Boa Tarde, comecei meus estudos em Assembly, no exemplo de colocar uma simples mensagem na tela, não consegui entender quase nada kk, vocês poderiam me explicar o que cada linha desse código faz ?

section .data
msg db 'Meu primeiro programa', 0AH
len equ $-msg

section .text
global _start
_start: mov edx, len
mov ecx, msg
mov ebx, 1
mov eax, 4
int 80h

mov ebx, 0
mov eax, 1
int 80h

Responder tópico

2. Re: vocês poderiam me explicar esse código de Assembly ? [RESOLVIDO]

Melhor resposta

Enviado em 19/12/2013 - 11:09h

section .data ;area de definicao de constantes
msg db 'Meu primeiro programa', 0AH ;aqui é declarado uma constante
len equ $-msg ;pega o tamanho da constante msg


section .text ;sessão de código
global _start

_start:

mov edx, len ;move para o registrador edx o tamanho (len)
mov ecx, msg ;move para ecx a string
mov ebx, 1 ;move 1 para ebx. Utiliza-se 1 para saída padrão (monitor)
mov eax, 4 ;numero da chamada de sistema write
int 80h ;chama o kernel para a execução da chamada de sistema

;chamada de sistema para finalização do programa
mov ebx, 0 ;valor de retorno para o Sistema operacional
mov eax, 1 ;numero da chamada de sistema exit
int 80h ;chama o kernel

3. Re: vocês poderiam me explicar esse código de Assembly ? [RESOLVIDO]

Enviado em 08/01/2014 - 20:00h

dision08 escreveu:

section .data ;area de definicao de constantes
msg db 'Meu primeiro programa', 0AH ;aqui é declarado uma constante
len equ $-msg ;pega o tamanho da constante msg


section .text ;sessão de código
global _start

_start:

mov edx, len ;move para o registrador edx o tamanho (len)
mov ecx, msg ;move para ecx a string
mov ebx, 1 ;move 1 para ebx. Utiliza-se 1 para saída padrão (monitor)
mov eax, 4 ;numero da chamada de sistema write
int 80h ;chama o kernel para a execução da chamada de sistema

;chamada de sistema para finalização do programa
mov ebx, 0 ;valor de retorno para o Sistema operacional
mov eax, 1 ;numero da chamada de sistema exit
int 80h ;chama o kernel


Obrigado pela resposta, você poderia me indicar alguma apostila de Assembly ?

4. Re: vocês poderiam me explicar esse código de Assembly ? [RESOLVIDO]

Enviado em 09/01/2014 - 21:35h

Conheço "Programing from the Ground Up" é uma boa apostila Assembly (em inglês) só que a sintaxe é AT&T (meio ruinzinha comparada com a a sintaxe Intel que você usa) mas você pode tirar algumas idéias de lá.

6. Re: vocês poderiam me explicar esse código de Assembly ? [RESOLVIDO]

Enviado em 10/01/2014 - 09:26h

dision08 escreveu:

Conheço "Programing from the Ground Up" é uma boa apostila Assembly (em inglês) só que a sintaxe é AT&T (meio ruinzinha comparada com a a sintaxe Intel que você usa) mas você pode tirar algumas idéias de lá.


Certo, obrigado, vou procurar e ler.

7. Re: vocês poderiam me explicar esse código de Assembly ? [RESOLVIDO]

Enviado em 10/01/2014 - 09:27h

Buckminster escreveu:

Aqui nesse link tem informações boas sobre Assembly, é só "fuçar":

http://www.numaboa.com.br/component/search/?searchword=assembly&searchphrase=all&Itemid=41


eu ja tinha lido um tutorial desse site ( http://www.numaboa.com.br/informatica/tutos/assembly ), mas não tinha visto que tinha mais material sobre Assembly, obrigado pela ajuda.

8. Re: vocês poderiam me explicar esse código de Assembly ? [RESOLVIDO]

Enviado em 10/01/2014 - 10:50h

kirito escreveu:

Buckminster escreveu:

Aqui nesse link tem informações boas sobre Assembly, é só "fuçar":

http://www.numaboa.com.br/component/search/?searchword=assembly&searchphrase=all&Itemid=41


eu ja tinha lido um tutorial desse site ( http://www.numaboa.com.br/informatica/tutos/assembly ), mas não tinha visto que tinha mais material sobre Assembly, obrigado pela ajuda.


De nada.

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder