Prévia do material em texto
1. Atualmente, existem diversas linguagens de programação voltadas para desenvolver soluções em sistemas microcontrolados. Essas linguagens podem ser classificadas como baixo nível e alto nível. Sendo assim, de acordo com seus conhecimentos e com o conteúdo desta Unidade de Aprendizagem, marque a alternativa correta que contém apenas linguagens de alto nível: C, C++, Basic e Java. · As linguagens de baixo nível são aquelas que contêm pouco ou nenhum nível de abstração do conjunto de instruções de uma arquitetura de computador. Dentre as linguagens listadas na questão, somente a linguagem de máquina e o Assembly são classificadas como linguagens de baixo nível. · As linguagens de alto nível são aquelas que contêm forte nível de abstração do conjunto de instruções de uma arquitetura de computador. Dentre as linguagens listadas na questão, as linguagens C, C++, Basic, Pascal, Java e Python são classificadas como linguagens de alto nível. 2. Um código de alto nível facilita a leitura do código e torna o desenvolvimento mais rápido. No entanto, são necessárias etapas adicionais para que o microcontrolador compreenda o programa desenvolvido em comparação com os códigos, utilizando a linguagem de baixo nível. Nesse contexto, marque a alternativa com as etapas necessárias ordenadas para a conversão de códigos em linguagem de alto nível para linguagem de máquina: Compilação, montagem e linkagem. · Na linguagem de alto nível, o código programado é primeiramente compilado para uma linguagem de baixo nível. Então, ele é montado para um código objeto pelo Assembler. E, por fim, ele é linkado em um código executável em linguagem de máquina, enquanto que na linguagem de baixo nível são necessárias apenas a montagem e a linkagem. 3. A linguagem de programação de baixo nível mais conhecida é o Assembly. Ela é muito utilizada em diversos microprocessadores e microcontroladores e pode apresentar algumas diferenças, de acordo com a arquitetura do dispositivo programado. Sendo assim, ela não é uma linguagem portátil. De acordo com os seus conhecimentos e o conteúdo abordado nesta Unidade de Aprendizagem, marque a alternativa correta sobre a linguagem Assembly: O Assembly é uma linguagem que contém instruções com uma notação mais legível que a linguagem de máquina e menos familiar que a linguagem de alto nível. · As instruções da linguagem Assembly são mnemônicos, que são palavras (rótulos simbólicos) curtas de fácil memorização e autoexplicativas na língua inglesa. Desse modo, ela é mais legível do que a linguagem de máquina e menos familiar do que a linguagem de alto nível. · O compilador é um programa que traduz uma linguagem de alto nível para uma de baixo nível, e não é necessário para código em linguagem Assembly. A etapa de compilação é necessária para programas em linguagem de alto nível. A linguagem Assembly não é diretamente reconhecida por um computador, sendo necessárias as etapas de montagem e linkagem para converter um código em Assembly para linguagem de máquina. 4. Considere o conjunto de instruções em Assembly para um microcontrolador fictício: Suponha que você trabalha como desenvolvedor e desenvolveu o seguinte trecho de código em Assembly: 1: MOVLW 3 2: MOV A, W 3: MOVLW 5 4: MOV B, W 5: SUB B, A 6: ADD A, B Marque a alternativa que contenha os valores finais dos registradores A, B e W ao executar esse trecho de código. A = 5, B = 2 e W = 5. · Na linha 1, o comando MOVLW 3 salva o valor numérico 3 no registrador W. · Na linha 2, o comando MOV A, W copia o conteúdo do registrador W, no momento é 3, para o registrador A. · Na linha 3, o comando MOVLW 5 salva o valor numérico 5 no registrador W. Esse é o valor final do registrador W. · Na linha 4, o comando MOV B, W copia o conteúdo do registrador W, no momento é 5, para o registrador B. · Na linha 5, o comando SUB B, A realiza a operação B = B (valor 5) - A (valor 3), portanto, o conteúdo de B ficará igual a 2. Este é o valor final do registrador B. · Na linha 6, o comando ADD A, B realiza a operação A = A (valor 3) + B (valor 2), portanto, o conteúdo de A ficará igual a 5. Este é o valor final do registrador A. 5. A linguagem C é uma linguagem de programação de alto nível utilizada para a programação de computadores e microcontroladores. Essa popularidade vem da robustez e eficiência que a linguagem apresenta. Sendo assim, considere o código mostrado na figura a seguir: Sendo assim, marque a alternativa com a saída impressa na tela ao executar esse código: Bem-vindo ao mundo do C. Programar vai ser muito bom! · Os códigos em C seguem um fluxo de execução de cima para baixo, sendo assim, o comando printf("Bem-vindo ao mundo do C.\n\n"), na linha 4, é executado primeiro e imprime a mensagem (Bem-vindo ao mundo do C.) na tela. O código de formatação \n indica a quebra de linha e posiciona o cursor no início dessa nova linha. Como há dois \n no comando, então, duas novas linha serão saltadas. E, portanto, o comando printf("Programar vai ser muito bom!") irá imprimir a mensagem na terceira linha da tela, deixando uma linha de espaço entre as mensagens. Sendo assim, a saída impressa na tela será: Bem-vindo ao mundo do C. Programar vai ser muito bom! image1.png