INF1612 - Software Básico - 2005.2

Aulas de Laboratório

Aula 7 - Revisão

  1. Você terminou todos os laboratórios anteriores? Se não, termine agora.

  2. Escreva em assembly uma função para imprimir um valor na base 2 (representação binária). A função recebe um único parâmetro int (o valor a ser impresso). Use a função putchar para imprimir os dígitos binários.

  3. Considere o código abaixo:

    struct X {
      char c;
      char *s;
    };
    
    int find (struct X *x) {
      char *s;
      for (s = x->s; *s; s++)
        if (*s == x->c) return s - x->s;
      return -1;
    }
    
    Codifique a função find em assembly.
  4. Refaça o exercício anterior assumindo que a estrutura X tem a definição abaixo:

    struct X {
      int c;
      int *s;
    };
    
    Procure mudar o mínimo possível no seu código.