SlideShare uma empresa Scribd logo
1 de 13
Programação I




Programação de Computadores e
          Algoritmos
         25/08/2011
Linguagens de Programação
●   É um método padronizado para expressar
    instruções, ordens, a um computador.
●   Antigamente os computadores eram
    programados “diretamente” alterando-se
    posições de chaves e contatos elétricos e
    eletrônicos. Evoluíram para as linguagens
    modernas.
●   Podem ser classificadas em diversas
    ordens:
Quanto ao nível
●   Baixo nível: muito próximo ao que o
    computador entende e por isso
    dificilmente pode ser usado em
    computadores diferentes. Usa
    mnemônicos como comandos:
       ●   Ex: Linguagem de máquina e Assembly
Quanto ao nível
variable:
   .message      db   "Olá,
Mundo!$"
code:
   mov   ah, 9
   mov   dx, offset .message
   int   0x21
   ret
Quanto ao nível
●   Alto nível: Mais próximo à linguagem
    humana.
       ●   Ex: Java e FORTRAN


       program ola
       print*,"Olá Mundo!"
       end program ola
Quanto ao nível
●   Médio nível: intermediário entre o baixo e
    o alto nível.
       ●   Ex: C


       int main()
       {
            printf("Olá, Mundo!n");
       }
Quanto à execução
●   Os programas são escritos em arquivos
    no formato texto (legíveis pelo homem), e
    podem ser interpretados e/ou compilados
    para gerar arquivos executados em
    formato binário (legíveis pela máquina).
●   Estes dois processos: interpretação e
    compilação podem ser estendidos a
    outros, mas basicamente são capazes de
    gerar os programas que usamos.
Processo de compilação

10 Print “Olá, Mundo!”




     Código Fonte             Interpretador




011010011100101001001110100
110110001000101000101101101           Olá, Mundo!
011101110111010100111010101
001001000011110000111000111
111000011010100111010100010



      Executável
      (memória)
Processo de compilação
                                           011010
                                           110110
int main()                                 001010
{
   printf("Olá, Mundo!n");
}
                                           011010
                                           110110
                                           001010
                                                    Linkeditor
     Código Fonte             Compilador




011010011100101001001110100
110110001000101000101101101                Olá, Mundo!
011101110111010100111010101
001001000011110000111000111
111000011010100111010100010



      Executável
Processo de compilação
        Run Time
Pseudolinguagem
●   Linguagem de “programação”
    simplificada, usada para ignorarmos
    detalhes de uma linguagem real.
●   Toda (pseudo)linguagem deve ser bem
    definida tanto em sintaxe quanto em
    semântica.
Pseudolinguagem
●   Sintaxe: Conjunto de regras a serem
    seguidas para a escrita do
    algoritmo/programa; como começa, como
    termina, como escrever os comandos,
    como definir variáveis, etc.
●   Semântica: O que é feito quando
    encontrar um comando.
Trabalho
●   Escolha uma linguagem de programação
    e pesquise as suas palavras reservadas;
●   Pesquise linguagens de programação
    usadas para criar linguagens de
    programação.
●   Você também pode definir uma linguagem
    de programação. Indique duas ocasiões
    onde pode ser necessária uma nova
    linguagem de pogramação.

Mais conteúdo relacionado

Semelhante a Programação I - Linguagens de Programação

Aula 3 - Programação 1
Aula 3 - Programação 1Aula 3 - Programação 1
Aula 3 - Programação 1Isaac Barros
 
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação Marcos Gregorio
 
Paradigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - ClassificaçõesParadigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - ClassificaçõesAdriano Teixeira de Souza
 
Introdução à Programacao em Processing
Introdução à Programacao em Processing Introdução à Programacao em Processing
Introdução à Programacao em Processing Jorge Cardoso
 
Introdução á programação - 1ª parte
Introdução á programação - 1ª parteIntrodução á programação - 1ª parte
Introdução á programação - 1ª parteLuis Fernandes
 
Aula1 - introdução à programação
Aula1 - introdução à programaçãoAula1 - introdução à programação
Aula1 - introdução à programaçãoIan Giestas Pauli
 
Arquiteturas de Computadores - slides
Arquiteturas de Computadores - slidesArquiteturas de Computadores - slides
Arquiteturas de Computadores - slidesGuilherme Ferreira
 
Arquiteturas de computadores! slidesversaopdf
Arquiteturas de computadores!   slidesversaopdfArquiteturas de computadores!   slidesversaopdf
Arquiteturas de computadores! slidesversaopdfMarcelle Guiné
 
Int. sistemas de informação iii
Int. sistemas de informação iiiInt. sistemas de informação iii
Int. sistemas de informação iiiRay Fran Pires
 
Conceitos fundamentais de_programacao
Conceitos fundamentais de_programacao Conceitos fundamentais de_programacao
Conceitos fundamentais de_programacao Jorge Cardoso
 
Conceitos Fundamentais de Programacao
Conceitos Fundamentais de ProgramacaoConceitos Fundamentais de Programacao
Conceitos Fundamentais de ProgramacaoJorge Cardoso
 
Aula 03 - Interpretador [mr_@@@@@].pdf
Aula 03 - Interpretador [mr_@@@@@].pdfAula 03 - Interpretador [mr_@@@@@].pdf
Aula 03 - Interpretador [mr_@@@@@].pdfmouzinhoconcursos
 
Introdução à programação em Android e iOS - Conceitos fundamentais de program...
Introdução à programação em Android e iOS - Conceitos fundamentais de program...Introdução à programação em Android e iOS - Conceitos fundamentais de program...
Introdução à programação em Android e iOS - Conceitos fundamentais de program...Luís Gustavo Martins
 

Semelhante a Programação I - Linguagens de Programação (20)

Aula 3 - Programação 1
Aula 3 - Programação 1Aula 3 - Programação 1
Aula 3 - Programação 1
 
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação
 
Paradigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - ClassificaçõesParadigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - Classificações
 
Code Masters
Code MastersCode Masters
Code Masters
 
Introdução à Programacao em Processing
Introdução à Programacao em Processing Introdução à Programacao em Processing
Introdução à Programacao em Processing
 
Introdução á programação - 1ª parte
Introdução á programação - 1ª parteIntrodução á programação - 1ª parte
Introdução á programação - 1ª parte
 
Arquiteturas de computadores slides
Arquiteturas de computadores   slidesArquiteturas de computadores   slides
Arquiteturas de computadores slides
 
Aula1 - introdução à programação
Aula1 - introdução à programaçãoAula1 - introdução à programação
Aula1 - introdução à programação
 
Arquiteturas de Computadores - slides
Arquiteturas de Computadores - slidesArquiteturas de Computadores - slides
Arquiteturas de Computadores - slides
 
Arquiteturas de computadores! slidesversaopdf
Arquiteturas de computadores!   slidesversaopdfArquiteturas de computadores!   slidesversaopdf
Arquiteturas de computadores! slidesversaopdf
 
Lp m2(parte1)
Lp m2(parte1)Lp m2(parte1)
Lp m2(parte1)
 
Maquinas multinivel
Maquinas multinivelMaquinas multinivel
Maquinas multinivel
 
Paradigmas de Linguagem
Paradigmas de LinguagemParadigmas de Linguagem
Paradigmas de Linguagem
 
Int. sistemas de informação iii
Int. sistemas de informação iiiInt. sistemas de informação iii
Int. sistemas de informação iii
 
Software
SoftwareSoftware
Software
 
Aula 08-oac-execucao-de-programas
Aula 08-oac-execucao-de-programasAula 08-oac-execucao-de-programas
Aula 08-oac-execucao-de-programas
 
Conceitos fundamentais de_programacao
Conceitos fundamentais de_programacao Conceitos fundamentais de_programacao
Conceitos fundamentais de_programacao
 
Conceitos Fundamentais de Programacao
Conceitos Fundamentais de ProgramacaoConceitos Fundamentais de Programacao
Conceitos Fundamentais de Programacao
 
Aula 03 - Interpretador [mr_@@@@@].pdf
Aula 03 - Interpretador [mr_@@@@@].pdfAula 03 - Interpretador [mr_@@@@@].pdf
Aula 03 - Interpretador [mr_@@@@@].pdf
 
Introdução à programação em Android e iOS - Conceitos fundamentais de program...
Introdução à programação em Android e iOS - Conceitos fundamentais de program...Introdução à programação em Android e iOS - Conceitos fundamentais de program...
Introdução à programação em Android e iOS - Conceitos fundamentais de program...
 

Mais de Carlos Wagner Costa (18)

Raspberry pi
Raspberry piRaspberry pi
Raspberry pi
 
Apresentacao dev ops
Apresentacao dev opsApresentacao dev ops
Apresentacao dev ops
 
Palestra semana pedagógica2
Palestra semana pedagógica2Palestra semana pedagógica2
Palestra semana pedagógica2
 
Ubuntu 13.04
Ubuntu 13.04Ubuntu 13.04
Ubuntu 13.04
 
Compiladores
CompiladoresCompiladores
Compiladores
 
História da computação
História da computaçãoHistória da computação
História da computação
 
Vetores
VetoresVetores
Vetores
 
Funções
FunçõesFunções
Funções
 
Lógica booleana e estruturas condicionais
Lógica booleana e estruturas condicionaisLógica booleana e estruturas condicionais
Lógica booleana e estruturas condicionais
 
Estrutura i o e operações mtm
Estrutura i o e operações mtmEstrutura i o e operações mtm
Estrutura i o e operações mtm
 
Variáveis e portugol
Variáveis e portugolVariáveis e portugol
Variáveis e portugol
 
Paradigmas de programação
Paradigmas de programaçãoParadigmas de programação
Paradigmas de programação
 
Programação de computadores
Programação de computadoresProgramação de computadores
Programação de computadores
 
Software
SoftwareSoftware
Software
 
Organização de computadores
Organização de computadoresOrganização de computadores
Organização de computadores
 
Famílias de computadores
Famílias de computadoresFamílias de computadores
Famílias de computadores
 
Computador
ComputadorComputador
Computador
 
Computação Básica - Aula 1
Computação Básica - Aula 1Computação Básica - Aula 1
Computação Básica - Aula 1
 

Programação I - Linguagens de Programação

  • 1. Programação I Programação de Computadores e Algoritmos 25/08/2011
  • 2. Linguagens de Programação ● É um método padronizado para expressar instruções, ordens, a um computador. ● Antigamente os computadores eram programados “diretamente” alterando-se posições de chaves e contatos elétricos e eletrônicos. Evoluíram para as linguagens modernas. ● Podem ser classificadas em diversas ordens:
  • 3. Quanto ao nível ● Baixo nível: muito próximo ao que o computador entende e por isso dificilmente pode ser usado em computadores diferentes. Usa mnemônicos como comandos: ● Ex: Linguagem de máquina e Assembly
  • 4. Quanto ao nível variable: .message db "Olá, Mundo!$" code: mov ah, 9 mov dx, offset .message int 0x21 ret
  • 5. Quanto ao nível ● Alto nível: Mais próximo à linguagem humana. ● Ex: Java e FORTRAN program ola print*,"Olá Mundo!" end program ola
  • 6. Quanto ao nível ● Médio nível: intermediário entre o baixo e o alto nível. ● Ex: C int main() { printf("Olá, Mundo!n"); }
  • 7. Quanto à execução ● Os programas são escritos em arquivos no formato texto (legíveis pelo homem), e podem ser interpretados e/ou compilados para gerar arquivos executados em formato binário (legíveis pela máquina). ● Estes dois processos: interpretação e compilação podem ser estendidos a outros, mas basicamente são capazes de gerar os programas que usamos.
  • 8. Processo de compilação 10 Print “Olá, Mundo!” Código Fonte Interpretador 011010011100101001001110100 110110001000101000101101101 Olá, Mundo! 011101110111010100111010101 001001000011110000111000111 111000011010100111010100010 Executável (memória)
  • 9. Processo de compilação 011010 110110 int main() 001010 { printf("Olá, Mundo!n"); } 011010 110110 001010 Linkeditor Código Fonte Compilador 011010011100101001001110100 110110001000101000101101101 Olá, Mundo! 011101110111010100111010101 001001000011110000111000111 111000011010100111010100010 Executável
  • 11. Pseudolinguagem ● Linguagem de “programação” simplificada, usada para ignorarmos detalhes de uma linguagem real. ● Toda (pseudo)linguagem deve ser bem definida tanto em sintaxe quanto em semântica.
  • 12. Pseudolinguagem ● Sintaxe: Conjunto de regras a serem seguidas para a escrita do algoritmo/programa; como começa, como termina, como escrever os comandos, como definir variáveis, etc. ● Semântica: O que é feito quando encontrar um comando.
  • 13. Trabalho ● Escolha uma linguagem de programação e pesquise as suas palavras reservadas; ● Pesquise linguagens de programação usadas para criar linguagens de programação. ● Você também pode definir uma linguagem de programação. Indique duas ocasiões onde pode ser necessária uma nova linguagem de pogramação.