next up previous
Next: About this document ...

Primeira Prova de MAC-211
Primeiro semestre de 2001

  1. (2.0 pontos) A seguinte fun��o em linguagem C � transformada em linguagem de montagem pelo gcc no Linux; mostre a situa��o completa da pilha quando o primeiro comando de atribui��o da fun��o � executado.
    int Func (char *string, int len, int mode)
     {
            int temp;
            char minhaSequencia[4];
            temp = 0;
            .
            .
            .
     }
    

  2. (2.5 pontos) Escreva uma fun��o em linguagem de montagem (pass�vel de ser chamada por uma fun��o em C compilada com o gcc no Linux) que, dados os inteiros $a$, $b$ e $c$, calcula a maior raiz da equa��o do segundo grau com coeficientes $a$, $b$ e $c$, onde $a \neq 0$. Todos os c�lculos devem ser feitos usando-se apenas n�meros inteiros (o resto da divis�o pode ser ignorado). Assuma a exist�ncia de uma fun��o da biblioteca matem�tica int raiz_quadrada (int x) que devolve a raiz quadrada (arredondando-a para um inteiro) do par�metro $x$. O prot�tipo da fun��o dever� ser

    int Bascara (int a, int b, int c, int *erro);

    O valor retornado em erro deve ser 0 caso nenhum erro tenho ocorrido e 1 caso as suas ra�zes sejam complexas.

  3. (1.0 ponto) Suponha que o procedimento A chama o procedimento B, que por sua vez chama o procedimento C que finalmente chama o procedimento D. As chamadas n�o envolvem passagem de par�metros pela pilha nem aloca��o de vari�veis locais. Como o procedimento D pode retornar diretamente para o procedimento A?

  4. (2.0 pontos) Escreva uma seq��ncia de comandos UNIX separados pelo caractere pipe, i.e. $\vert$ para

  5. (2.5 pontos) Escreva um filtro em linguagem C que receba um arquivo texto na sua entrada padr�o e que jogue para a sa�da padr�o todos as linhas que contenham uma cadeia de caracteres dada em sua linha de comando. Ao final ele deve imprimir quantas linhas possuem tal cadeia. Exemplos de utiliza��o:

    meugrep OlhaEuAqui
    
    meugrep "Esse e' o meu String"
    

Divirta-se e boa prova!



next up previous
Next: About this document ...
Fabio Kon 2002-04-17