Informática, perguntado por isadoranawierskihhj, 1 ano atrás

5. Coloque verdadeiro ou falso
( ) O compilador traduz a linguagem de baixo nível para a linguagem de alto nível.
( ) O compilador traduz a linguagem de alto nível para a linguagem de baixo nível.
( ) Linguagens de alto nível mostram-se mais complicadas para o programador.
( ) Linguagens de baixo nível geram, normalmente, programas maiores do que as linguagens de alto nível.
( ) Assembly é o programa que faz a tradução do programa em código binário.
( ) Assembly é uma linguagem de alto nível.
( ) Neste curso, vamos aprender a programar em linguagens de baixo nível, pois como o nome já diz, tem um nível de dificuldade mais acessível para nós.

Soluções para a tarefa

Respondido por cledersonbc
28
( ) O compilador traduz a linguagem de baixo nível para a linguagem de alto nível.
Falso. É o oposto: após o processo de compilação é gerado o programa (ou bytecodes, em caso de linguagens interpretadas) que contém instruções em baixo nível (o bytecode é intermediário).

( ) O compilador traduz a linguagem de alto nível para a linguagem de baixo nível.
Verdadeiro. O motivo já foi explicado na alternativa anterior.

( ) Linguagens de alto nível mostram-se mais complicadas para o programador.
Falso. Linguagens alto nível tentam se aproximar mais da linguagem humana, portanto, oferecem uma abstração maior ao programador.

( ) Linguagens de baixo nível geram, normalmente, programas maiores do que as linguagens de alto nível.
Verdadeiro. Veja um exemplo em C e Assembly MIPS:
C
01 #include <stdio.h>
02 int main() {
03   int a, b, c;
04   printf("Informe A: ");
05   scanf("%d", &a);
06   printf("Informe B: ");
07   scanf("%d", &b);
08   c = a+b;
09   printf("Soma: %d\n", c);
10   return 0;
11 }

Assembly MIPS
01 .data
02    msg1: .asciiz "Informe A: "
03    msg2: .asciiz "Informe B: "
04    msg3: .asciiz "Soma: "
05 .text
06 main:
07    li $v0, 4
08    la $a0, msg1
09    syscall
10  
11    li $v0, 5
12    syscall
13    add $t0, $v0, $zero
14  
15    li $v0, 4
16    la $a0, msg2
17    syscall
18  
19    li $v0, 5
20    syscall
21    add $t1, $v0, $zero
22   
23    add $t2, $t0, $t1
24   
25    li $v0, 4
26    la $a0, msg3
27    syscall
28   
29    li $v0, 1
30    add $a0, $t2, $zero
31    syscall

( ) Assembly é o programa que faz a tradução do programa em código binário.
Falso. O Assembly é o código, como demonstrado acima.

( ) Assembly é uma linguagem de alto nível.
Falso novamente.

( ) Neste curso, vamos aprender a programar em linguagens de baixo nível, pois como o nome já diz, tem um nível de dificuldade mais acessível para nós.
Falso. O código acima demonstra a diferença gritante entre baixo nível e alto nível. Baixo nível precisa mexer com registradores (nesse caso usei $t0, $t1 e $t2) e trabalhar mais próximo do código de máquina.
Perguntas interessantes