Buscar

02 - Conceitos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

A Linguagem de Máquina consiste do conjunto de instruções definidas por cadeias de zeros e uns.
A Linguagem de Montagem corresponde a uma tentativa de tornar mais fácil, para o ser humano, o significado das sequências de zeros e uns da Linguagem de Máquina.
leia Cartão e guarde em Ei: 111 00000000 IIII 
copie Ei em Ej: 111 0001 IIII JJJJ 
some(subtraia, multiplique,...) Ei e Ej e guarde em Ek: yyy IIII JJJJ KKKK 
some yyy=000; subtraia yyy=001; multiplique yyy=010; divida yyy=011; 
vá para Ei: 111 00000001 IIII 
se Ei (maior, menor, maior ou igual,...)  Ej vá para Ek: yyy IIII JJJJ KKKK 
maior yyy=100; igual yyy=101; menor=110; 
imprima Ei: 111 00000010 IIII 
pare: 111 00000011 0000 
Na codificação acima IIII, JJJJ ou KKKK representam quatro dígitos binários que identificam uma das 16 posições de memória do computador simplificado; 0000 corresponde a E0, 0001 corresponde a E1, 0010 corresponde a E2 e assim sucessivamente até 1111 que corresponde a E15.
Um programa denominado Montador traduz um programa de linguagem de montagem para linguagem de máquina.
	E0  
leia entrada e guarde em E15;
	E1: 
leia entrada e 
guarde em E14
	E2  
se E15 = E12 vá para E6
	E3  
some E14 e E13 e guarde em E13
	E4  
some E11 e E12 e guarde em E12
	E5  
vá para E2
	E6  
imprima E13 
	E7  
pare
	E8  
            ?
	E9  
             ?
	E10  
           ?
	E11  
1 
	E12  
 0 
	E13  
0 
	E14  
            ?
	E15  
             ?
O que este programa faz?
O programa calcula o produto de dois números utilizando somas sucessivas e corresponde ao seguinte programa:
E0: leia cartão e guarde em E15
E1: leia cartão e guarde em E14
E2: multiplique E15 por E14 e guarde em E13
E3: imprima E13
E4: pare
Um possível problema do programa da questão anterior é a dependência de sua eficiência na ordem de entrada dos valores; se os dois valores lidos são 3 e 1000, podem ser feitas 3 somas ou então 1000 somas! Verifique se funciona e codifique em linguagem de máquina as duas soluções.
E0: leia cartão e guarde em E15
E1: leia cartão e guarde em E14
E2: some E11 e E12 e guarde em E12
E3: se E15>E14 vá para E7
E4: some E14 e E13 e guarde em E13
E5: se E15>E12 va para E2
E6: va para E9
E7: some E15 e E13 e guarde em E13
E8: se E14>E12 vá para E2
E9: imprima E13
E10: pare
E11: 1
E12: 0
E13: 0
Primeiro passo: Editor de texto favorito
O compilador é o g++ ou gcc.
Montador assembler: traduz operações para código binário
Compiladores X interpretadores
Programa: forma de se comunicar com um computador

linguagem máquina
Programas são ‘traduzidos’ através de outros programas “especiais”: 
Compiladores lêem um programa inteiro e converte-o para um código-objeto.
Interpretadores lêem uma linha por vez.
Linguagem de programação
Envolve um conjunto de instruções , estruturas e formas de programação com o objetivo de desevolver programas
Processo:
 fonte  objeto  executável
Alguns conceitos
 Código-Fonte: criado em um editor de textos, contendo os comandos da linguagem de programação (C, Pascal...). Serve como entrada para o compilador.
 Código-Objeto: criado pela conversão do código-fonte em linguagem de máquina. É gerado pelo compilador. Só é criado quando não há erros no código-fonte. (Extensão do código-objeto: .OBJ)
 Ligador ou Linkeditor: "junta" o código-objeto com as bibliotecas necessárias para gerar o programa-executável. (Extensões das bibliotecas: .DLL ou .LIB)
 Programa Executável: código que pode ser executado pelo sistema operacional. (Extensão do programa-executável: .EXE)
 Tempo de Compilação: durante o processo de conversão entre código-fonte e código-objeto.
 Tempo de Execução: após a ativação do programa executável.

Outros materiais