Informática Numaboa - Tutoriais e Programação
Cap. III - Registradores do Microprocessador
Sab 15 Dez 2007 13:46 |
- Detalhes
- Categoria: MASM + RadASM
- Atualização: Segunda, 01 Março 2010 22:07
- Autor: Alan Moreno
- Acessos: 13229
2 - Criaremos uma função que subtraia 2 quantidades e, depois de regressar da função, o resultado deve ser devolvido ao registro EAX. No final deve mostrar o resultado em decimal.
Para assistir ao vídeo, faça o download de prog004a.exe.
Dentro da nossa função Resta, colocamos 2 instruções para poder subtrair quantidades. Já sabemos como estas instruções são utilizadas porque tudo já foi bem explicado. Depois, o resultado é armazenado em EAX e, ao retornar da função, convertemos o valor inteiro em cadeias de texto (recordar que a função de conversão está na biblioteca masm32.lib) para poder mostrar o resultado com a API MessageBox.
Nota - Na função criada pode-se usar valores como também variáveis e registradores de 8, 16, 32 bits por que tudo isto se inclui em DWORD.
Exercícios
- Temos 3 valores - 800, 400, 100 (decimais) - em cadeias de texto e
queremos um programa que faça a seguinte operação:
800 – 450 = X
e deve-se substrair 100 do resultado X para obter Y. Este resultado deve ser mostrado. - Criar um programa que some 5 quantidades e a soma destas quantidades serão reduzidas em 225 decimal. As 5 quantidades podem ser qualquer valor inteiro, desde que sejam em decimal ou hexadecimal. Se quiser mostrar o resultado, faça-o.
- Criar uma função que tenha 2 parâmetros para que mostre uma mensagem
portanto:
O primeiro parâmetro - Aqui se colocará o endereço da etiqueta da Mensagem que se irá mostrar.
O segundo parâmetro - Aqui se colocará o endereço da etiqueta do título da mensagem.
Vocabulário
Pilha ou stack - A pilha é uma área de memória que pode ser utilizada para o armazenamento temporário de dados. Só 2 instruções trabalham com a pilha: são o PUSH (guarda) e o POP (recupera).
Lembrando
Não esquecer de perguntar na lista MASM32-RadASM. As soluções destes exercícios serão enviados para a lista dentro de uma semana. Vocês também podem enviar suas prórias soluções.
Se tiverem dúvidas, sugestões ou outros, faça-as na lista de discussão.
O autor pode ser contactado
eMail: O endereço de e-mail address está sendo protegido de spambots. Você precisa ativar o JavaScript enabled para vê-lo. ou O endereço de e-mail address está sendo protegido de spambots. Você precisa ativar o JavaScript enabled para vê-lo.
Lista de discussão MASM32-RadASM
http://groups.google.es/group/MASM32-RadASM
www
Copyright(c) 2005-2006 RVLCN
Recado da vó
Aqui está o código fonte dos exercícios deste tutorial:
- prog002a.zip
- prog002b.zip
- prog002c.zip
- prog002d.zip
- prog002e.zip
- prog003.zip
- prog003a.zip
- prog004.zip
- prog004a.zip
- << Anterior
- Próximo