Linguagem de programação
• Linguagem de programação
– Implementação de algoritmos
– Tradução em código executável
(fonte => objeto => executável)
– Processo de tradução: dependente de
máquina
• Java
• Padrões (C ANSI)
– Compartilhamento de “módulos” ou
procedimentos
– Adequação: velocidade, sintaxe, requisitos
Linguagem de programação
• Linguagem de programação
– Comandos
• Palavras-chave de uma linguagem associadas a
implementações específicas
– Variáveis
• Recursos de armazenamento de valores que
podem ser modificados durante a execução de
programas
– Constantes
• Recursos para armazenamento de valores
estáticos durante a execução de programas
Linguagem de programação
• Linguagem de programação
– Programas
• Seqüência de comandos de uma linguagem, em
formato padronizado, que permite a
implementação de algoritmos
• Fonte: descrição original, em formato texto, pelo
programador
• Executável: descrição na linguagem de máquina
do processador em que deve ser executado
• Objeto: formato intermediário, usadopara
composição de código com diversos módulos
Linguagem de programação
• Linguagem de programação
– Programas
• Exemplo:
#include <stdio.h>
/* impressão de uma mensagem simples */
main()
{
printf(“\n Mensagem inicial em c! \n”);
return 0;
}
Linguagem de programação
• Linguagem de programação
– Tipos de dados
• Numéricos
• Lógicos
• Texto
– Expressões
• Conjunto de operadores e valores ou variáveis,
utilizado para a implementação de cálculos
Linguagem de programação
• Linguagem de programação
– Expressões
• Exemplo: média
–
–
–
–
Variável 1 -> valor da primeira prova (v1)
Variável 2 -> valor da segunda prova (v2)
Variável média -> média aritmética das duas (v1 e v2)
Operadores: atribuição soma e divisão
• media = (v1 + v2) / 2;
Linguagem de programação
• Linguagem de programação
– Expressões
• Operadores
– Aritméticos
– Lógicos
– Atribuição
Introdução
• Algoritmo => linguagem de
programação
Exibir o resultado
C++
Cout<< endl<<“Resultado: “ <<valor<<endl;
C
printf(“\nResultado: %d\n”,valor);
Mapeamento
para
a linguagem
de
programação
PHP
echo(“\nResultado: “.$valor.”\n”);
PASCAL
write(“Resultado: “);
Writeln(valor);
Python
print “\nResultado:”
print valor
ASSEMBLY
valor dw 00
mens db 13,10,“Resultado:”
res db 0000
db “$”
.......
;conversão de valor/ASCII
........
mov ah,9
mov dx, offset mens
Int 21h
Introdução
• Implementação de programas
No Visual C++:
disco
Gera arquivo fonte
(.cpp)
Editor de texto
Lê arquivo fonte (.cpp)
Gera arquivo objeto
Compilador
Lê arquivo objeto,
Lê arquivos de bibliotecas
Gera arquivo executável
Editor de ligação
(linker)
-File New
-File Save
-Build compile
-Build build .exe
Introdução
• Implementação de programas
No Visual C++:
-File New
-File Save
-Build compile
-Build build .exe
L Z ø+A2L k .drectve
b $
.debug$S
„ † H B.CRT$XCU
– ¢ @ 0À.text
= À ý % P`.rdata
=
@[email protected]$S
N N œ
H B.text
Ö ° †#
¨$
P`.text$x
D% W%
P`.xdata$x
` u% Õ%
@ @@.debug$S
& '(
HB.text
N Ÿ( í(
)
P`.debug$S
± ) È)
HB.text
* Ü)
* P`.debug$S
Ž
* š*
HB.text
5 ®* ã* ÷*
P`.debug$S
w
H B-defaultlib:libcpd -defaultlib:LIBCD -defaultlib:OLDNAMES -editandcontinue -include:___pfnBkCheck
J
ptrdiff_t
__exString
exception
u size_t
y
_s__CatchableType
! wchar_t
6
_TypeDescriptor
J
FILE
f
_PMFN
p va_list@ +
D + X
\
k
o ƒ P
‡ P œ ¯ §
³ §
á
å F š U‹ìƒì@SVW
}À¹ ¸ÌÌÌÌó«h h è ƒÄ3À_^[ƒÄ@;ìè ‹å]Ã
# 1 5 ! *
,
Bem vindo
Introdução
No Visual C++:
-File New
-File Save
-Build compile
-Build build .exe
// teste in C++
#include <iostream>
int main()
{
std::cout << "Bem vindo C++!\n";
return 0;
}
Material e recursos
• Bibliografia
– Terada, Routo. Desenvolvimento de Algoritmos e
Estruturas de Dados. São Paulo: McGraw-Hill, 1991.
– Lee, Richard C.. Tepfenhart, William M.. Paschoa,
Celso Roberto (trad.). UML e C++: Guia Prático de
Desenvolvimento Orientado a Objeto. São Paulo:
Makron, 2001.
– Wirth, Niklaus. Lee, Cheng Mei (trad.). Algoritmos e
Estruturas de Dados. Rio de Janeiro: LTC, 1989-1999.
– Szwarcfiter, Jayme Luiz. Markenzon, Lilian. Estruturas
de Dados e seus Algoritmos. 2. ed. Rio de Janeiro:
Livros Técnicos e Científicos, 1994.
– Preiss, Bruno R.. Gouvêa, Elizabeth Ferreira (trad.).
Estruturas de Dados e Algoritmos: Padrões de
Projetos Orientados a Objetos com Java. Rio de
Janeiro: Campus, 2000.
Download

Linguagem de programação