introdução e sistemas de numeração - joinville.udesc.br · sistemas de numeração....
TRANSCRIPT
Programação para Engenharia I
PROGRAMAÇÃO PARA ENGENHARIA I
Prof. Claudinei Dias
email: [email protected]
Introdução e
Sistemas de Numeração
Programação para Engenharia I
Histórico da Computação
A união de várias áreas do conhecimento contribuiu para o desenvolvimento da tecnologia
Evolução do ComputadorDurante séculos o ato de computar faz parte da vida de cada um
A evolução da máquina de computar ocorreu de acordo com as necessidades do ser humano
2/75
Programação para Engenharia I
Introdução
• SOs vem passando por um processo gradual de evolução
• A história dos SOs é bastante ligada à evolução da arquitetura dos computadores
• Veremos as sucessivas gerações de computadores para entendermos a evolução dos SOs
3/75
Programação para Engenharia I
Introdução
• Primeiro computador - Charles Babbage (1792 – 1871)
• Nunca conseguiu vê-la funcionando de forma apropriada
• Inteiramente mecânica – não existiam componentes eletrônicos
• Não possuía SO
• Aspecto histórico interessante: Babbage percebeu que precisava de um software para sua máquina
4/75
Programação para Engenharia I
A primeira geração (1945-1955)
• Após Babbage, poucos progressos na construção de computadores digitais – até a II Guerra Mundial
• Meados de 40, vários conseguiram construir máquinas de calcular• Ciclos medidos em segundos – relés mecânicos lentos• Mais tarde substituídos por válvulas• Ocupavam salas inteiras – milhares de válvulas• Milhões de vezes mais lentas que o PC mais barato de hoje
Primeira máquina de calcular com relés – Z1
5/75
Programação para Engenharia I
A primeira geração (1945-1955)
• A mesma pessoa projetava, construía, programava, operava e fazia manutenção
• Não existia Sistema Operacional
• Modo normal de operação:• Programador reservava tempo
de máquina em uma planilha
• Ia para sala de máquina
• Inseria o painel de programação no computador
• Torcia para que nenhuma válvula queimasse (por algumas horas)
• Cálculos numéricos diretos, como seno, cosseno e logaritmo
John von Neumann (1946)
6/75
Programação para Engenharia I
A primeira geração (1945-1955)
• Década de 50 – evolução – perfuradoras de cartões
7/75
Programação para Engenharia I
A segunda geração (1955-1965)
• Introdução do transistor mudou a situação –computadores tornaram-se confiáveis
• Computadores puderam ser comercializados pois funcionariam por tempo suficiente para serem úteis
8/75
Programação para Engenharia I
A segunda geração (1955-1965)
• Começa a haver separação entre projetistas, fabricantes, programadores e técnicos de manutenção
• Computadores de grande porte – mainframes
• Ficavam isoladas e eram operadas por equipes profissionais
• Somente grandes corporações, agências governamentais e universidades podiam pagar
9/75
Programação para Engenharia I
A segunda geração (1955-1965)
• Para executar um job:
– Programador escrevia o programa no papel
– Perfurava os cartões e levava o maço para a sala de entradas
– Entregava a um dos operadores e ia tomar um café
• Ao fim da execução de um job:
– Operador ia até a impressora e retirava a saída
– Levava para a sala de saídas para o programador
• Muito tempo de computador desperdiçado enquanto os operadores andavam pelas salas
10/75
Programação para Engenharia I
A segunda geração (1955-1965)
• Era preciso reduzir o desperdício de tempo
• Sistema em lote (batch)
• Gravação de vários jobs em fita magnética usando um computador mais barato – IBM1401
• Bom para ler cartões, copiar fitas e imprimir saída, mas ruim em cálculos
11/75
Programação para Engenharia I
A segunda geração (1955-1965)
• Máquinas mais caras – IBM7094 – faziam os cálculos numéricos
12/75
Programação para Engenharia I
A segunda geração (1955-1965)
• Depois de acumular um lote de jobs (± 1 hora) a fita era encaminhada para a sala das máquinas
• O operador carregava um programa especial para ler a fila de jobs e executá-los
• É o antecessor do sistema operacional de hoje
• Terminado, retirava-se a fita e levava-se de volta ao 1401 para impressão
• Usados para cálculos de equações diferenciais – programados em FORTRAN e em linguagem de montagem
• Os SOs eram o FMS (Fortran Monitor System) e o IBSYS – da IBM para o 7094
13/75
Programação para Engenharia I
A terceira geração (1965-1980)
• Maioria dos fabricantes oferecia duas linhas de produtos totalmente incompátiveis
• Demandava grande custo para o fabricante
• Cliente precisava expandir negócios – não podiam atualizar seus computadores
14/75
Programação para Engenharia I
A terceira geração (1965-1980)
• IBM lança System/360 – série de máquinas com softwares compatíveis
15/75
Programação para Engenharia I
A terceira geração (1965-1980)
• Primeira linha a usar CIs em pequena escala –melhor custo-benefício
• Sucesso instantâneo – outros fabricantes adotaram a ideia
1974 – Intel 4004 – 4 bits, 2000 transistores,
1974 – Intel 8080 – 8 bits
16/75
Programação para Engenharia I
A terceira geração (1965-1980)
• O OS/360 precisava rodar tanto em sistemas pequenos – 1401 – quanto em sistemas muito grandes – 7094
• Tinha que ser eficiente com poucos periféricos e com muitos periféricos, ambientes comerciais e ambientes científicos
• Sistema operacional enorme e complexo – milhões de linhas escritas em linguagem de montagem por milhares de programadores
• Cada nova versão corrigia alguns erros e inseria alguns novos
17/75
Programação para Engenharia I
A terceira geração (1965-1980)
• Apesar disso, atendiam razoavelmente bem à seus clientes
• Evolução de várias técnicas de sistemas operacionais
• Multiprogramação – quando o 7094 terminava um job, ficava ocioso até a gravação da fita e entrada de outra.
• Em sistemas comerciais, tempo de espera chegava a 80-90% do tempo total
18/75
Programação para Engenharia I
A terceira geração (1965-1980)
• Divisão da memória em várias partes – um job em cada parte
• Enquanto um job esperava, outro executava• Para isso, necessário hardware especial para isolar cada
job
19/75
Programação para Engenharia I
A terceira geração (1965-1980)
• Spooling – capazes de transferir jobs dos cartões para discos magnéticos
• 1401 não era mais necessário – leva e traz de fita desaparece
20/75
Programação para Engenharia I
A terceira geração (1965-1980)
• Intervalo de tempo entre submeter job e obter saída era de muitas horas
• Erro de compilação – programador perdia metade do dia
• Timesharing – compartilhamento de tempo
• Usuários conectavam através de terminais remotos
• 20 usuários conectados – 17 pensando ou tomando café – CPU alocada ciclicamente aos 3 jobs rodando
• Comandos curtos – podia atender os programadores e rodar grandes lotes de job em segundo plano
• CTSS - Compatible Time Sharing System – sistema de compartilhamento de tempo compatível
21/75
Programação para Engenharia I
A terceira geração (1965-1980)
• Baseado no sucesso do CTSS – MULTICS
• MIT, Bell Labs e GE
• Enorme máquina fornecendo ‘energia’ computacional
• Não funcionou – Bell Labs retirou-se, GE saiu da área
• MIT lançou – instalado em 80 empresas e universidades
• Enorme influência sobre os sistemas operacionais seguintes
22/75
Programação para Engenharia I
A terceira geração (1965-1980)
• Ken Thompson, da Bell Labs, escreveu uma versão monousuário do MULTICS – Unix
• Tanenbaum desenvolve clone do Unix – Minix – em 1987
• Linus Torvalds desenvolve versão gratuita do Minix -Linux
23/75
Programação para Engenharia I
A quarta geração (1980 – presente)
• Desenvolvimento de CIs em larga escala
• CI – milhares de transistores em um cm² de silício
• Era dos computadores pessoais
• Microprocessador tornou possível que indivíduos tivessem seu próprio computador pessoal
Primeiro computador pessoal -Commodore PET –microprocessador 6502
24/75
Programação para Engenharia I
A quarta geração (1980 – presente)
• 1974 - Intel lança 8080 – buscava um SO
• Gary Kildall – consultor da Intel - desenvolveu um SO baseado em disco – CP/M (Control Program for Microcomputers)
• Intel não acreditava em micros baseados em disco
• Kildall requisitou os direitos e fundou a Digital Research
• Dominou completamente o mercado durante 5 anos
25/75
Programação para Engenharia I
A quarta geração (1980 – presente)
• Advogado é contra assinar acordo de sigilo sobre o PC
• IBM volta a Gates
• Gates contata a Seattle Computer Products – que possui o DOS (Disk Operating System)
• Compra a empresa por 50 mil dólares
• Anos 80 – IBM projeta IBM PC e busca um SO
• Contata Bill Gates para licenciar o Basic e pede por um SO
• Gates sugere a Digital Research
• Kildall recusa a reunir-se com a IBM – envia subordinado
26/75
Programação para Engenharia I
A quarta geração (1980 – presente)
• Gates vende à IBM um pacote DOS/Basic
• Contrata Tim Paterson, criador do DOS
• Sistema revisado muda para MS-DOS
• Domina o mercado do IBM PC
• Gates vendia o DOS para as fabricantes – diferente de Kildallque vendia para os usuários
• 1983: lançado IBM PC/AT com Intel 80286 – MS-DOS avançava e CP/M definhava
• MS-DOS amplamente usado com 80386 e 80486
27/75
Programação para Engenharia I
A quarta geração (1980 – presente)
• SOs baseados em digitação de comandos
• Anos 60, Doug Engelbart – Stanford Research Institute –inventou a interface GUI (Graphical User Interface)
• Adotadas pela Xerox PARC (Palo Alto Research Center)
• Steve Jobs visitou o Xerox PARC e viu uma interface GUI
• Percebeu seu potencial – coisa que a Xerox não tinha feito
• Projeto Lisa – muito dispendioso e falhou comercialmente
28/75
Programação para Engenharia I
A quarta geração (1980 – presente)
• Segunda tentativa – Apple Macintosh –enorme sucesso
• Custo menor e interface amigável
• Destinada a usuários que não sabiam nada sobre computadores e que não tinham intenção de saber
• Microsoft segue a tendência e desenvolve o Windows
• Interpretador de comandos em cima do MS-DOS
• De 85 a 95, Windows era apenas um ambiente gráfico
• 1995 – Lançado Windows 95 – incorpora aspectos de um SO e usa o DOS apenas para ser carregado
29/75
Programação para Engenharia I
Evolução das interfaces GUI
• Windows 1.0
30/75
Programação para Engenharia I
Evolução das interfaces GUI
• Windows 2.0
31/75
Programação para Engenharia I
Evolução das interfaces GUI
• Windows 3.0
32/75
Programação para Engenharia I
Evolução das interfaces GUI
• Windows 3.11 NT
33/75
Programação para Engenharia I
Evolução das interfaces GUI
• Windows 95
34/75
Programação para Engenharia I
Evolução das interfaces GUI
• Windows 98
35/75
Programação para Engenharia I
Evolução das interfaces GUI
• Windows XP
36/75
Programação para Engenharia I
Evolução das interfaces GUI
• Windows Vista
37/75
Programação para Engenharia I
Evolução das interfaces GUI
• Windows 7
38/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple System 1.0 (1984)
39/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple System 2.0 (1985)
40/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple System 3.0 (1986)
41/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple System 5.0 (1987)
42/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple System 6.0 (1988)
43/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple System 7.0 (1991)
44/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple System 8.0 (1997)
45/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple System 9.0 (1999)
46/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple Mac OS X 10 (2001)
47/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple Mac OS X Tiger (2005)
48/75
Programação para Engenharia I
Evolução das interfaces GUI
• Apple Mac OS X Leopard (2005)
49/75
Programação para Engenharia I
Histórico da Computação
Tipos de Computadores
50/75
• Computadores de grandes empresas
• Realização de grandes tarefasMAINFRAME
• Computadores capazes de servir diversas máquinas ao mesmo tempo
• Difusão de computadores entre os funcionários de diversos setores.
COMPUTADORES EM REDE, SERVIDORES E CLIENTES
• Utilizado por empresas que necessitam de alto desempenho, ou seja capaz de executar vários trabalhos simultaneamenteWORKSTATION
• Computador Pessoal, barato e acessível e realiza as principais tarefas rotineirasPC
• Computadores portáteis, importante para o trabalho de campoNOTEBOOK
• Tem sido o maior sucesso nas feiras de Informática e Comunicação. Dispositivos pequenos capazes de efetuar várias tarefas
PALMTOP , SMARTPHONE e TABLET
Programação para Engenharia I
Histórico da Computação
Hardware e Software
51/75
• É a parte física da máquina, ou seja, seus componentes eletrônicos, peças e periféricos
HARDWARE
• É a parte lógica da máquina, um conjunto de procedimentos que executam alguma função “programas”
SOFTWARE
Programação para Engenharia I
Histórico da Computação
Classificação dos Computadores
52/75
1ª Geração
• 1945
• UNIVAC 1
• Válvulas
• Milisegundos
• Grande
• Pouco confiáveis
• Monoprogramá-veis
• Linguagem de Máquina
2ª Geração
• 1958
• IBM 1401
• Transistor (SSI e MSI)
• 100 vezes menor
• Consumo menor de energia
• Mais rápido e confiável
• Microsegundos
• Discos magnéticos
• Monoprogramá-veis
• Linguagem Assembler
3ª Geração
• 1965
• IBM 360
• Circuito integrado (LSI)
• Miniaturização dos componentes
• Baixíssimo consumo de energia
• Menor Tamanho
• Multiprograma-ção
4ª Geração
• 1975
• Circuitos integrados (LSI e VLSI –Very LargeScale Integration)
• 0,5 nanosegundos
• Popularização
• Firmware (funções SO)
5ª Geração
• 1990
• Aperfeiçoamento da tecnologia (ULSI-Ultra ScaleIntegration)
• Aumento da velocidade de processamento
• Conectividade
• Mobilidade
• OBS: Geração criada pelos japoneses para descrever o potencial da conectividade
Programação para Engenharia I
Modelo de Computador
Representação da Informação
Um dos grandes nomes da teoria da informação, Claude Shannon (autor de "The Mathematical Theory ofCommunication") define que informação está presente sempre que um sinal é transmitido de um ponto a outro.
Processamento da Informação pelo Ser Vivo
os SENTIDOS são meios de receber sinais do meio ambiente;
estas impressões sensoriais são transmitidas por uma rede nervosa ao cérebro através de sinais elétricos e químicos;
sons emitidos pelos seres vivos são também meios de transmitir informações a outros seres: são mensagens que exprimem vontades, impressões, ordens...
53/75
Programação para Engenharia I
Modelo de Computador
Arquitetura de um computador
A arquitetura básica de um computador moderno segue ainda de forma geral os conceitos estabelecidos pelo Professor da Universidade de Princeton, John Von Neumann (1903-1957)
1. Codificassem instruções que pudessem ser armazenadas na memória e sugeriu que usassem cadeias de uns e zeros (binário) para codificá-los;
2. Armazenassem na memória as instruções e todas as informações que fossem necessárias para a execução da tarefa desejada;
3. Ao processarem o programa, as instruções fossem buscadas na diretamente na memória.
54/75
Programação para Engenharia I
Modelo de Computador
Arquitetura de um computador
Unidade Central de Processamento (UCP)
MEMÓRIA PRINCIPAL (MP)
DISPOSITIVOS DE ENTRADA E SAÍDA (E/S)
55/75
Programação para Engenharia I
Dispositivos Digitais x Analógicos
56/75
Programação para Engenharia I
Unidades básicas do computador Digital
Hardware
Unidade de Entrada
Teclado, mouse, microfone,
scanner, câmeras digitais, etc.
CPU Unidade de Saída
Monitor de vídeo, impressora, alto falante, plotter,
etc.
57/75
Programação para Engenharia I
Unidades básicas do computador Digital
58/75
Programação para Engenharia I
Terminologias usual em Computação
Termos técnicos (terminologias) de informática/computação utilizados para referenciar funções e/ou aplicações, por exemplos:
HardwareHard Disc: Disco rígido, sigla HD
SoftwareOperation System: Sistema Operacional, sigla SO
Computação em geralHost: máquina, hospedeiro
ExercícioCada aluno deve apresentar 5 terminologias com seus respectivos significados
59/75
Programação para Engenharia I
Sistemas Numéricos
Sistemas de Numeração
RomanoI, II, III, IV ... XVIII ....
Decimal1, 2, 3 ... 12 ....
Binário01, 10, 11 ... 1001...
60/75
Programação para Engenharia I
Sistemas Numéricos
Sistema de Numeração Posicionais
A posição ocupada por cada algarismo em um número altera seu valor de uma potência de 10 (na base 10) para cada casa à esquerda
Por exemplo, no sistema decimal (base 10)O número 125
o algarismo 1 representa 100 (uma centena ou 102)
o 2 representa 20 (duas dezenas ou 2x101)
e o 5 representa 5 mesmo (5 unidades ou 5x100)
Assim, em nossa notação, 125 = 1x102 + 2x101 + 5x100
61/75
Programação para Engenharia I
Sistemas Numéricos
Base de um Sistema de Numeração
A base de um sistema é a quantidade de algarismos disponível na representação
Na base 10 (0, 1, 2, 3, 4, 5, 6, 7, 8 e 9)
Na base 2 (0 e 1)
Na base 16 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F)
62/75
Programação para Engenharia I
Sistemas Numéricos
Representação BináriaOs computadores modernos utilizam apenas o sistema binário
bit (uma contração do inglês binary digit)
Na base 2, o número "10" vale dois
63/75
Programação para Engenharia I
Sistemas Numéricos
Representação Octal
Representação Hexadecimal
64/75
102 seria lido "um-zero" na base 2 e vale 210
(convertido para "dois" na base dez),
105 seria lido "um-zero" na base 5 e vale 510
(convertido para "cinco" na base dez),
1010 pode ser lido como "um-zero" na base 10 ou então como "dez" na base dez,
1016 seria lido "um-zero" na base 16 e vale 1610
(convertido para "dezesseis" na base dez),
Programação para Engenharia I
Sistemas Numéricos
Conversões entre Basesregras gerais para converter números entre duas bases
Conversão de números da base 2 para a base 10
Nb = an.bn + .... + a2.b2 + a1.b1 + a0.b0 + a-1.b-1 + a-2.b-2 + .... + a-n.b-n
Exemplo
O número 1011012 na base 10
1x25 + 0x24 + 1x23 + 1x22 + 0x21 + 1x20 = 32 + 0 + 8 + 4 + 0 + 1 = 4510
OBS: podemos fazer a conversão de números em qualquer base para a base 10 usando o algoritmo acima
65/75
Programação para Engenharia I
Sistemas Numéricos
Conversões entre Basesentre as bases 2, 8 e 16
Regra Geral: separa em grupos de n bits sempre começando da direita para esquerda (n representa a potência da bases que são potências entre si B=bn, exemplo 23 = 8)
Exemplosconversão entre a base 2 e 8 (8 = 2³)
101010012 = 10.101.0012
Sabemos que 0102 = 28 ; 1012 = 58 ; 0012 = 18
portanto 101010012 = 2518
conversão entre as bases 2 e 16 (16 = 24)
110101011012 = 110.1010.11012
Sabemos que: 1102 = 616; 10102 = A16 ; 11012 = D16
Portanto: 110101011012 = 6AD16
66/75
Programação para Engenharia I
Sistemas Numéricos
Conversões entre Bases
A conversão inversa
Exemplo
3F5H em octal
convertendo cada dígito hexadecimal em 4 dígitos binários 11.1111.01012
agrupando de três em três bits 1.111.110.1012
convertendo cada grupo para seu valor equivalente em octal 17658
67/75
Programação para Engenharia I
Sistemas Numéricos
Conversões entre Bases
Conversão de Números da Base 10 para uma Base b qualquer
Parte Inteira
O número decimal será dividido sucessivas vezes pela base
resto de cada divisão ocupará sucessivamente as posições de ordem 0, 1, 2 ... Até o quociente resultar em zero
Exemplo: 1910 para a base 2
68/75
Programação para Engenharia I
Sistemas Numéricos
Conversões entre Bases
Conversão de Números da Base 10 para uma Base b qualquer
Parte Fracionária
Multiplicações sucessivas do número fracionário pela base
A parte inteira do resultado da primeira multiplicação será o valor da primeira casa fracionária e a parte fracionária será de novo multiplicada pela base
Por exemplo, converter 15,6510 para a base 2, com 5 e com 10 algarismos fracionários
69/75
Programação para Engenharia I
Noções de Sistemas Operacionais
Conceito
“Conjunto de programas que tem por finalidade gerenciar os recursos do computador e facilitar a comunicação entre o homem e a máquina. Ou seja, unir : hardware, software e peopleware”
Funções
– Permitir o funcionamento básico do computador e dos seus periféricos
– Permitir a interação do homem e máquina , através de comandos previamente definidos
– Executar tarefas básicas e rotineiras dentro de um sistema de computação (classificação, edição, cópia, apagar, impressão de um arquivo, formatação de discos, alocar e liberar memória, gerenciar periféricos)
– Execução de programas
– Tornar o uso do equipamento mais simples, seguro e eficiente
70/75
Programação para Engenharia I
Noções de Sistemas Operacionais
Tipos de Supervisão e Controle
– Tratamento de erros
– Tratamento de I/O
– Escalonamento de processo
– Proteção
Características
– Escrito em linguagem de baixo nível
– Eficiente e eficaz
– Dependente da arquitetura do hardware
71/75
Programação para Engenharia I
Noções de Rede Local
“Rede é uma forma de interligar equipamentos (micros e periféricos) para que seja possível a troca de dados e o compartilhamento de recursos.”
Aspectos positivos das redes
– Comunicação e intercâmbio de dados entre usuários
– Processamento Distribuído
– Compartilhamento de recurso em geral
– Racionalização do uso de periféricos
– Acesso rápido a informações compartilhadas
– Flexibilidade lógica e física de expansão
– Custo/Desempenho baixo para soluções que exijam muitos recursos
– Interação entre diversos usuários e departamentos de uma empresa
– Redução e eliminação de redundância de armazenamento
– Controle da utilização e proteção no acesso de arquivos
72/75
Programação para Engenharia I
Noções de Rede Local
Topologias
– Estrela
– Anel
– Barramento
Arquiteturas
– Ponto a Ponto
– Cliente-Servidor
73/75
Programação para Engenharia I
Bibliografia da Disciplina
74/75
BIBLIOGRAFIA BÁSICA:
MANZANO, José Augusto N. G., OLIVEIRA, Jayr Figueiredo de., Algoritmos: lógica para desenvolvimento de programação
de computadores. 17a. ed. São Paulo: Érica, 2005. 236p. ISBN 857194718X.
FORBELLONE, André Luiz Villar; EBERSPACHER, Henri Frederico. Lógica de programação: a construção de algoritmos e
estruturas de dados. 3a. edição São Paulo: Prentice Hall, 2005. 197 p.
ISBN 8534611246.
IBPI – Instituto Brasileiro de Pesquisa em Informática. Dominando a Linguagem C, Rio de Janeiro: IBPI Press, 1993.
KERNIGHAN, Brian W; RITCHIE, Dennis M. C. A Linguagem de programação padrão ANSI. 1a. ed. Rio de Janeiro/Porto
Alegre: Campus, 1990. 289 p. ISBN 8570015860.
SCHILDT, H. C. Completo e Total. 3a. ed. São Paulo: Makron Books Ltda, 1996. Apostila de Linguagem C da UFMG
disponível na internet em http://ead1.eee.ufmg.br/cursos/C/
BIBLIOGRAFIA COMPLEMENTAR:FEDELI R. D.; POLLONI E. G. F; PERES, F. E., Introdução à Ciência da Computação, Cengage Learning, 2010.
MEDINA M; FERTIG C., Algoritmos e Programação – Teoria e Prática, Novatec, São Paulo, 2006.
GUIMARÃES A. e LAGES N. , Algoritmos e Estruturas de Dados , Ed. LTC Livros Técnicos e Científicos, Rio de Janeiro, 1985.
JAMSA K., Salvo pelo C++, LTC Livros Técnicos e Científicos Editora, 1994.
ALCADE E. Informática Básica e outros Ed. Makron Books São Paulo 1991.
SALIBA, CARAM W. L. Técnicas de Programação: uma abordagem estruturada, Ed. Makron, McGrawHill, São Paulo, 1992.
MACHADO F. M. Ed. LTC , Introdução à Arquitetura de Sistemas Operacionais Livros Técnicos e Científicos, Rio de Janeiro, 1992.
DAVIS W. S. D. Sistemas Operacionais: uma visão sistemática Ed. Campus, Rio de Janeiro, 1990.
Programação para Engenharia I
PROGRAMAÇÃO PARA ENGENHARIA I
Prof. Claudinei Dias
email: [email protected]
Introdução e
Sistemas de Numeração