comentários
da página
obrigado
1.0 - O Computador:
O computador é uma máquina capaz de receber, armazenar, tratar e produzir informações de forma automática, com grande rapidez e precisão. A evolução dos sistemas de computação teve seu início no século XVI, mas estes somente mostraram-se úteis neste século, e sua vulgarização se deu graças à recente evolução na microeletrônica.
1.0.1 - Modalidades de Computadores:
Existem os computadores Analógicos e Digitais.
Os sistemas de medição ou aferição podem ser classificados em:
» Sistemas Analógicos:
O computador analógico representa variáveis por meio de analogias físicas. Trata-se de uma classe de computadores que resolve problemas referentes a condições físicas, por meio de quantidades mecânicas ou elétricas, utilizando circuitos equivalentes como analogia ao fenômeno físico que está sendo tratado. São aqueles que utilizam operações aritméticas por meio de analogia, ou seja, os computadores analógicos não trabalham com números, nem com símbolos que representam os números, eles procuram fazer analogia entre quantidades. Com essa analogia executam as operações, obtendo como resultado uma analogia do que seria o resultado geral, o qual transformam de modo a tornar reconhecível pelos seres humanos. Este tipo de computador tem emprego principalmente em laboratórios de pesquisa e para aplicações científicas e tecnológicas.
» Sistemas Digitais:
O computador digital processa informações representadas por combinações de dados discretos ou descontínuos. Mais especificamente, trata-se de um dispositivo projetado para executar seqüências de operações aritméticas e lógicas diretamente com números. Este tipo de computador tem emprego mais generalizado em bancos, comércio, indústria e empresas de modo geral.
1.0.2 - Modelo de Von Neumann:
A grande maioria dos computadores existentes atualmente segue um modelo proposto pelo matemático americano Von Neumann, por volta de 1940. Nesse modelo, um elemento processador segue as instruções armazenadas em uma memória de programas, para ler canais de entrada, enviar comandos sobre canais de saída e alterar as informações contidas em uma memória de dados. (fonte: google)
Esse modelo inicial evoluiu para uma estrutura em barramento, que é a base dos computadores modernos. Nessa estrutura, as memórias de dados e de programa são fundidas em uma memória única, e as comunicações entre elementos são efetuadas através de uma via comum de alta velocidade.
1.1 - Evolução Histórica das Arquiteturas de Computadores:
A história dos computadores começou no momento em que o homem sentiu a necessidade de efetuar cálculos complexos de maneira automática.
1.1.1 - Precursores:
O primeiro elemento com que o homem contou para fazer seus cálculos foi o conjunto de dedos de suas mãos, daí veio a palavra digital, vindo de dígito, que significa dedo. Com a evolução da humanidade fez-se necessário novas invenções para auxiliar os cálculos:
» Ábaco (aproximadamente 3500 a.C.)
» Bastões de Napier (1610 - 1614)
» Réguas de Cálculo (1621)
1.1.2 - Geração Zero (século XVII):
Os primeiros computadores, ou de geração zero, apareceram no século XVII e eram compostos exclusivamente por elementos mecânicos. Além disso, caracterizavam-se por uma grande rigidez no que diz respeito aos programas a executar, a grande parte delas sendo o que se chama hoje de máquinas dedicadas.
» Calculadora de Pascal (1642)
» Calculadora de Leibnitz (1671)
» Placa Perfurada (1801)
» Arithmometer (1820)
» Máquina Diferencial de Babbage (1823)
» Máquina Analítica
» Máquina de Hollerith (1886)
1.1.3 - As Máquinas de Primeira Geração (1930 - 1958):
Já no século XX, um grande número de projetos foram implementados, baseados na utilização de relés e válvulas eletrônicas para a realização de cálculos automaticamente, eram os computadores de primeira geração. Relés são eletroímãs cuja função é abrir ou fechar contatos elétricos com o intuito de interromper ou estabelecer circuitos. Válvula é um dispositivo que conduz a corrente elétrica num só sentido.
Uma das grandes vantagens das máquinas a relé sobre as máquinas de calcular mecânicas era, sem dúvida, a maior velocidade de processamento. Ainda, um outro aspecto positivo era a possibilidade de funcionamento contínuo, apresentando poucos erros de cálculo e pequeno tempo de manutenção.
Os computadores da primeira geração são todos baseados em tecnologias de válvulas eletrônicas. Normalmente quebravam após não muitas horas de uso. Tinham dispositivos de entrada/saída primitivos e calculavam com uma velocidade de milissegundos (milésimos de segundo). Os cartões perfurados foram o principal meio usado para armazenar os arquivos de dados e para ingressá-los ao computador. A grande utilidade dessas máquinas era no processamento de dados. No entanto tinham uma série de desvantagens como: custo elevado, relativa lentidão, pouca confiabilidade,
grande quantidade de energia consumida e necessitavam de grandes instalações de ar condicionado para dissipar o calor gerado por um grande número de válvulas (cerca de 20 mil).
» Mark I
» ABC (Atanasoff Berry Computer)
» ENIAC (Eletronic Numeric Integrator and Calculator)
1.1.4 - Computadores de Segunda Geração (1955 - 1965):
Com a invenção do transistor em 1948, o mundo dos computadores é tomado de assalto por uma onda de novos projetos que dá origem, na década de 60 a empresas hoje mundialmente conhecidas no que diz respeito à fabricação destas máquinas — DEC e IBM.
Com a segunda geração apareceram as memórias com anéis ferromagnéticos. As fitas magnéticas foram a forma dominante de armazenamento secundário: permitiam capacidade muito maior de armazenamento e o ingresso mais rápido de dados que as fitas perfuradas. (fonte: google)
Também nesse período houve avanços no que se refere às unidades de memória principal, como por exemplo, a substituição do sistema de tubos de raios catódicos pelo de núcleos magnéticos, utilizado até hoje nos chips de memória RAM. Os dispositivos de memória auxiliar introduzidos na primeira geração continuam a ser utilizados.
Esses computadores, além de menores, eram mais rápidos e eliminavam quase que por completo o problema do desprendimento de calor, característico da geração anterior.
Exemplos de computadores dessa geração são o IBM 1401 e o Honeywell 800. O IBM 1401 apareceu na década de 60 e com ele a IBM assumiu uma posição dominante na industria de computadores. A Digital Equipment Corporation tinha então uma posição proeminente no setor com sua linha PDP. O primeiro minicomputador foi o PDP-1, criado em 1959 e instalado em 1961. O primeiro produzido comercialmente foi o PDP-5. (fonte: google)
Um dos computadores mais comercializados nesta época foi o IBM 7090, que eram comercializados a um custo de três milhões de dólares. Já no início dos anos 60, a IBM passou a produzir os computadores da linha IBM 7040, que eram menos poderosos que seus predecessores, mas de custo bastante inferior.
1.1.5 - Computadores de Terceira Geração (1965 - 1980):
Essa geração é marcada pela substituição dos transistores pela tecnologia dos circuitos integrados (transistores e outros componentes eletrônicos miniaturizados e montados numa única pastilha de silício - o chip. Entrou no mercado em 1961 pela Fairchild Semiconductor e pela Texas Instruments, localizadas no Vale do Silício na região de Palo Alto e Stanford, na Califórnia (fonte: google). A tecnologia dos circuitos integrados, que permitiu a substituição de dezenas de transistores numa única peça de silício, permitiu o surgimento de computadores de menores dimensões, mais rápidos e menos caros. Com esses circuitos integrados o tempo passou a ser medido em nanossegundos (bilionésimos de segundos).
A tecnologia utilizada na época era a de pequena escala de integração (SSI –Small Scale of Integration) com a qual ao redor de mil transistores podiam-se integrar no circuito de uma pastilha. Com isso os computadores eram menores, mais confiáveis, com maior velocidade de operação e um custo bem mais baixo do que as máquinas das gerações anteriores. Também eram usados discos magnéticos para armazenamento, o que permitiu o acesso direto à arquivos muito grandes.
O exemplo típico dessa geração foi o IBM 360, série que introduziu o conceito de família de computadores compatíveis, facilitando a migração dos sistemas quando é necessário mudar para um computador mais potente. Esta estratégia permitiu que a IBM se posicionasse, já neste período, como líder do mercado de computadores.
Essa família era composta por seis modelos básicos e várias opções de expansão que realizava mais de 2 milhões de adições por segundo e cerca de 500 mil multiplicações.
Outra novidade introduzida por esta classe de computadores foi o conceito de multiprogramação, na qual diversos programas poderiam estar residentes na memória da máquina. No caso em que um programa entrasse em espera para uma operação de entrada/saída de dados, a unidade central passava a executar a parte de um outro programa.
Um outro computador desta geração que conheceu grande sucesso, particularmente nas universidades e centros de pesquisa foram os minicomputadores da série PDP-11.
1.1.6 - Computadores de Quarta Geração (1980 - até os dias atuais):
Durante a década de 70, com a tecnologia da alta escala de integração (LSI – Large Scale of Integration) pôde-se combinar até 65 mil componentes em uma só pastilha de silício (chip). Os anos 80, com o grande desenvolvimento da tecnologia de circuitos integrados, o número de transistores podendo ser integrados numa pastilha de silício atingiu a faixa dos milhares e, logo em seguida, dos milhões. Foi assim que surgiram os novos computadores, ainda menores, mais velozes e mais poderosos que aqueles da geração anterior. Na segunda metade da década de 90, houve a passagem da LSI para a VLSI (Very Large Scale of Integration). As máquinas de todas as gerações têm como característica comum a existência de uma única CPU para executar o processamento. Porém, mais recentemente, já existem computadores funcionando com mais de uma CPU.
Desde o início da década de 80 os preços haviam caído de tal maneira que já começava a ser possível a uma pessoa ter o seu próprio computador — começava então a era da informática pessoal. Os computadores pessoais passaram então a ser utilizados de uma maneira relativamente distinta dos grandes computadores de então.
No início dessa geração nasceu a Intel, que começou a desenvolver o primeiro microprocessador, o Intel 4004 de 4 bits, um circuito integrado com 2250 transistores, equivalente ao ENIAC. Este foi seguido pelo Intel 8008 de 8 bits e, mais tarde, pelo Intel 8080. O primeiro microcomputador da história foi o Altair 8800, que usava o chip Intel 8088, tornou-se padrão mundial da época para os microcomputadores de uso pessoal, abrindo uma nova era na história da informática.
Sthephen Wozniak e Steve Jobs formaram em 1976 uma pequena empresa, a Apple, onde construíram, numa garagem de fundo de quintal, o Apple I. Um ano depois, com um novo e melhor projeto, surge o Apple II, primeiro microcomputador com grande sucesso comercial e, mais tarde, o Apple III. Em 1983 entra no mercado o Lisa e em 1984 o Macintosh, com tecnologia de 32 bits. (fonte: google)
Em 1981, a IBM entrou no mercado de micros, introduzindo o PC, um microcomputador com tecnologia de 16 bits (Intel 8088) que em pouco tempo se tornou um padrão. Os principais modelos de PC são:
» PC: possui cinco slots, dos quais dois são ocupados na configuração mínima – um para o controlador de disco flexível e o outro para a placa de vídeo e impressora, um PC tem a seguinte configuração típica - 256 a 640 K de memória RAM na placa principal, duas unidades de disco flexível de 360 K, controlador de vídeo gráfico, monitor monocromático e interface serial ou paralela para a impressora. Seu clock era de 4,77 MHz.
» PX-XT: possui oito slots, sendo dois ou três ocupados na configuração inicial - placa controladora de vídeo mais uma ou duas placas para controlar discos (flexível e winchester). A configuração típica de um XT é 512 a 768 K de memória RAM na placa principal, um drive de 360 K, um winchester de 10, 20 ou 30 Mb, placa controladora de vídeo gráfica, monitor monocromático e interface paralela ou serial. Seu clock era de 8,10 até 12 MHz.
» PC-XT 286: modelo intermediário entro o PC-XT e o PC-AT ou, como era chamado, um AT simplificado, uma vez que usa o microprocessador do AT o Intel 80286. Esse era três vezes mais rápido que o XT e podia executar várias tarefas ao mesmo tempo. É um PC-XT com o 80286.
» PC-AT: usa o microprocessador da Intel 80286 de 32 bits e possui maior capacidade de processamento, com memória principal de até 4 Mbytes. Sua configuração inicial típica é: 1 Mbyte de RAM, um drive de 5,25 polegadas de alta capacidade, winchester de 20 ou 30 Mbytes com alta velocidade de acesso, interface paralela e serial RS-232, controlador de vídeo e monitor monocromático. Sua velocidade de processamento alcançava entre 16 e 20 Mhz. A grande importância do AT está na maior capacidade do 80286, que resulta em um desempenho duas a três vezes maior que os XT.
» PC-386: É um PC-AT com o microprocessador da Intel, o 80386. Com isso adquiriram grande velocidade de processamento e era capaz da multitarefa em 32 bits. O 80386 foi o grande marco da popularização da computação pessoal.
» PC 486: utiliza o microprocessador Intel 80486, com um co-processador aritmético embutido e mais de 1,2 milhão de transistores encolhidos em um chip. Em 1993 chegou ao mercado o Pentium, cuja versão Pentium III possui cerca de nove milhões de transistores, possibilitando. O Pentium trouxe um novo fôlego às chamadas estações de trabalho (microcomputadores poderosos usados em tarefas pesadas, como computação gráfica e aplicações científicas). Uma das novidades dele é que possibilita a simulação de dois processadores, ou seja, um princípio de paralelização antes possível apenas em supercomputadores e que agora está ao alcance dos usuários de microcomputadores.
» Arithmometer (1820)
» Máquina Diferencial de Babbage (1823)
» Máquina Analítica
» Máquina de Hollerith (1886)
(fonte: google)
2.0 - Sistema de Numeração:
Basicamente, uma explicação bem relevante do que ser um sistema de numeração, seria dizer que são sistemas de notação usados para representar quantidades abstratas denominadas números. Um sistema numérico é definido pela base que utiliza.
2.1 - Base de um Sistema de Numeração:
A base de um sistema é a quantidade de algarismos disponível na representação. A base 10 (decimal) é hoje a mais usualmente empregada, embora não seja a única utilizada. No comércio pedimos uma dúzia de rosas ou uma grosa de parafusos (base 12) e também marcamos o tempo em minutos e segundos (base 60).
Os computadores utilizam a base 2 (sistema binário) e os programadores, por facilidade, usam em geral uma base que seja uma potência de 2, tal como 24 (base 16 ou sistema hexadecimal) ou eventualmente ainda 23 (base 8 ou sistema octal).
Na base 10, dispomos de 10 algarismos para a representação do número: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Na base 2, seriam apenas 2 algarismos: 0 e 1. Na base 16, seriam 16: os 10 algarismos aos quais estamos acostumados, mais os símbolos A, B, C, D, E e F, representando respectivamente 10, 11, 12, 13, 14 e 15 unidades. Generalizando, temos que uma base b qualquer disporá de b algarismos, variando entre 0 e (b-1).
2.1.1 - Sistema Binário:
Os computadores modernos utilizam apenas o sistema binário, isto é, todas as informações armazenadas ou processadas no computador usam apenas DUAS grandezas, representadas pelos algarismos 0 e 1.
Essa decisão de projeto deve-se à maior facilidade de representação interna no computador, que é obtida através de dois diferentes níveis de tensão. Havendo apenas dois algarismos, portanto dígitos binários, o elemento mínimo de informação nos computadores foi apelidado de bit (binary digit).
Abaixo segue a tabela dos valores numéricos no qual são mais utulizados:
2.1.2 - Conversões de Bases e Aritmética Binária, Hexal e Octal:
Eu não vou frizar muito essa parte do tópico, apesar de ser o mais importante se tratando do sistema de numeração pelo motivo de ser muito complicado de explicar apenas escreveram.
2.2 - Operações Lógicas:
Todos as complexas operações de um computador digital acabam sendo combinações de simples operações aritméticas e lógicas básicas: somar bits, complementar bits (para fazer subtrações), comparar bits, mover bits. Estas operações são fisicamente realizadas por circuitos eletrônicos, chamados circuitos lógicos (ou gates - "portas" lógicas).
Computadores digitais (binários) são construidos com circuitos eletrônicos digitais - as portas lógicas (circuitos lógicos). Os sistemas lógicos são estudados pela álgebra de chaveamentos, um ramo da álgebra moderna ou álgebra de Boole, conceituada pelo matemático inglês George Boole (1815 - 1864). Boole construiu sua lógica a partir de símbolos, representando as expressões por letras e ligando-as através de conectivos - símbolos algébricos.
A álgebra de Boole trabalha com apenas duas grandezas: falso ou verdadeiro. As duas grandezas são representadas por 0 (falso) e 1 (verdadeiro). Nos circuitos lógicos do computador, os sinais binários são representados por níveis de tensão. A grandeza 0 (falso) é representada por tensão próximo ao valor 0 (Zero), e a grandeza 1 (verdadeiro) pela tensão próxima a 5 (Cinco).
Existem quatro tipos de operações lógicas que se podem operar sobre números binários: AND, OR, XOR (ou exclusivo), e NOT.
Para explicar melhor o que ser esse AND, OR, XOR, e NOT também será complicado, porque isso se aprende em Lógica para Computação, e será ruim "sairmos" do assunto principal do tópico.
2.2.1 - Operações Lógicas com bits:
» AND (E):
A operação lógica AND é uma operação que aceita dois operandos. Estes operando são binários simples (base 2).
Uma maneira compacta de representar a operação lógica AND é com a tabela verdade (foto que coloquei abaixo). As duas colunas a esquerda representam os dois operandos da operação e a terceira coluna representa o resultado.
Em português, a operação lógica AND é: "se o primeiro operando é 1 e o segundo operando é 1, o resultado é 1, senão o resultado é 0". Na Lógica para Computação seria "quando o 1º é verdadeiro e o 2º é verdadeiro, o resultado é verdadeiro".
» OR (OU):
A operação lógica OR também é uma operação com dois operandos.
A operação lógica OR significaria: "Se o primeiro operando ou o segundo operando (ou os dois) forem 1, o resultado é 1, senão o resultado é 0". Esta operação também é conhecida como ou inclusivo (inclusive-OR).
» XOR (OU Exclusivo):
A operação lógica XOR (ou exclusivo) também é uma operação com dois operandos.
Em português a operação lógica XOR significaria: "Se o primeiro operando ou o segundo operando, mas não os dois, for 1, o resultado é 1, senão o resultado é 1".
» NOT (NÃO):
Em português a operação lógica NOT significaria: "Se o operando for 1, o resultado é 0, senão o resultado é 1".
Dados Tratados Pelo Computador:
Todos os dados e as instruções armazenados em memória são codificados sob a forma de sinais elétricos do tipo ligado e desligado, representado pelos números 1 e 0. Cada unidade de informação deste tipo é chamada de bit. Assim o sistema numérico adotado em sistemas computacionais é o binário, ou de base 2.
Os computadores podem receber valores decimais, através do teclado, e escrever valores decimais, através do vídeo, por exemplo. Mas internamente os valores são armazenados e processados no sistema binário.
Um bit pode representar dois valores: 1 ou 0, ou então verdadeiro ou falso. Como isto é muito pouco, nós podemos unir dois ou mais bits para representar mais de dois valores.
Neste caso, a quantidade de valores representáveis por uma seqüência de n bits é de 2n.
Algumas strings de bits têm nomes próprio:
» Uma seqüência de 8 bits são chamados de byte.
» Uma seqüência de 4 bits é chamada de nibble.
» Um grupo de 16 bits é chamado de word.
» Um grupo de 32 bits é chamado de double word.
» Um grupo de 64 bits é chamado de quad word.
Por razões de simplificação de hardware, o número 1024 foi o escolhido para representar o "K" da computação. Na vida cotidiana e na física, o "K" vale 1000.
3.1 - Representação Interna de Caracteres:
A representação de caracteres e símbolos em computador é feita atribuindo-se a cada caractere ou símbolo um código binário. Desta forma são construídas tabelas (padrões) em que cada código binário representa para o computador um determinado caractere ou símbolo.
Os bytes são usados para representar caracteres, números, figuras, ou qualquer outro tipo de dado armazenado ou processado em um computador. Esta seção apresenta estas diversas formas de representação interna de caracteres.
Na maioria dos códigos alfanuméricos cada caractere é representado através de um byte. Por exemplo, no código ASCII a letra 'A' é representada pelo byte "0100 0001" (fonte: google). Uma seqüência de caracteres é expressa por uma cadeia de bytes sucessivos. Nem todos os tipos de códigos utilizam os 8 bits de um byte para a representação de caracteres.
Para o tópico não ficar extenso demais existem tipos de Tabelas de Caracteres:
» Código de 6 bits.
» Código de 7 bits (ASCII).
» EBCDIC (Extended Binary Coded Decimal Interchange Code).
» ASCII Estendido.
» ISO Latin-1.
» Caracteres ANSI.
» Caracteres UNICODE.
3.2 - Representação Interna de Números:
Esta seção do tópico apresenta diversas formas de representação interna de números. É uma parte muito simples de entendermos, porém complicada de ser explicada dessa forma. Por isso eu não vou explicar passo-a-passo todos os modo, e sim, citá-los apenas.
» Módulo e Sinal (MS).
» Complemento de 1 (C - 1).
» Complemento de 2 (C - 2).
» Excesso de 2 (elevado a (N - 1)).
Existem outro modelos de Representação Interna de Números.