Neste laboratório vamos começar a programar em assembler.
O nosso primeiro programa está
aqui.
Salve-o em um arquivo prog1.s
.
obs: Trate o trecho de código rotulado com
printnum
como uma caixa preta que serve para imprimir um número armazenado em eax.
Mais tarde no curso discutiremos o que ele contém.
Para compilar esse programa, basta chamar o gcc
:
> gcc -o prog1 prog1.s(Pela terminação
.s
o gcc
sabe que
o programa está em assembler.)
Para executá-lo, faça como sempre:
> ./prog1
Modifique o programa para imprimir somente a soma dos elementos do array.
Modifique o programa para imprimir os quadrados dos números de 1 a 10.
(Nesse caso o array não é usado para nada.
Para multiplicar um número por si mesmo, use a instrução imull
.)
Voltando ao programa com um array declarado como global. Modifique o programa para, ao invés de imprimir um número fixo de elementos do array, imprimir elementos até o "final" do array (defina um elemento com valor 0 para marcar o final).
Modifique o programa para imprimir apenas os elementos pares do array.
(Use a instrução and
para descobrir se o número é par.)
Modifique o programa para imprimir os dez primeiros termos da série de Fibonacci: 1 1 2 3 5 8 ...