Sei sulla pagina 1di 92

1.1CONCEITOS 1.1.

1Processamento Dados Processar dados consiste em manipular informaes iniciais com o objetivo de produzir outras informaes, outros dados ou os mesmos dados sob uma nova forma, tarefa esta desenvolvida desde os primrdios da civilizao em todas as atividades. 1.1.2 Computador um equipamento constitudo de componentes eletrnicos e mecnicos criado com a finalidade de executar operaes repetitivas com grande velocidade. Com o avano do computador que passou a executar as tarefas repetitivas, o processamento de dados passou a ser chamado de processamento eletrnico de dados e quase como um acrnimo, voltouse a chamar de Processamento de Dados. A necessidade de se criar uma mquina com as caractersticas do computador nasceu do crescente volume de dados a serem manipulados e demandada de tempo para a obteno dos resultados, bem como a preciso destes. O termo dado considerado como o elemento bsico para a gerao de uma informao, entretanto, uma informao que acabamos de produzir pode ser considerada apenas como um dado inicial para gerao de outra informao. Os avanos tecnolgicos, principalmente da microeletrnica e da mecnica, permitem o desenvolvimento de dispositivos capazes de coletar, armazenar e processar dados cada vez mais rapidamente. Figura 1.2 - Fluxo bsico de um Processamento de Dados

1.1.3Programa Conjunto de ordens, escrito em uma linguagem inteligvel pelo computador, elaboradas e executadas sistematicamente com objetivo de realizar uma determinada tarefa. Cada ordem considerada como uma instruo para cada computador, que as executa da forma e seqncia tal qual esto descritas no programa. 1.1.4Sistema de Computao um conjunto de componentes integrados que realizam algum tipo de operao sobre os dados com o objetivo de se obter um determinado resultado. 1.1.5 A Linguagem do Computador O computador possui uma linguagem prpria, formada por conjuntos especficos de zeros e uns ( Linguagem Binria ou de Mquina) para a qual todos os caracteres da linguagem humana so convertidos de modo que o computador possa entender os comandos que desejamos que ele execute . A Linguagem de Mquina a forma de se representar os dois estados (ligado/desligado) da corrente eltrica utilizados nos circuitos eletrnicos dos computadores. a nica linguagem inteligvel pelo computador. 1.1.6Linguagem de Programao Como a Linguagem de Mquina de difcil compreenso e manipulao, foram desenvolvidas linguagens intermedirias entre a da mquina e a do homem; estas linguagens denominam-se Linguagens de Programao. Dizemos que quanto mais prxima da linguagem humana for a linguagem de programao ela de alto nvel, caso contrrio considerado baixo nvel.

Os programas so geralmente, escritos em linguagem de programao e convertidos para linguagem de mquina atravs de programas especficos. 1.1.7Hardware, Software e Firmware Chamamos de Hardware ao conjunto formado pelos circuitos eletrnicos e partes eletromecnicas de um computador. DeSoftware ao conjunto de qualquer tipo de programa , em qualquer linguagem de programao , que seja utilizado pelo computador. Firmware, a integrao dos dois componentes anteriores, por exemplo, um conjunto microinstrues armazenadas em memria ROM. 1.2HISTRICO Todo profissional deve conhecer, mesmo que basicamente, o histrico da evoluo e o desenvolvimento da sua ferramenta de trabalho. A idia de se criar um dispositivo que auxiliasse nos clculos cada vez mais esternos e complicados com os quais o homem se deparava a cada vez que tentava progredir, data de muito tempo . 1.2.1Dispositivos Mecnicos (500 a.C. - 1880) O primeiro equipamento para efetuar clculos matemticos, data do sculo Ac, inventado pelos babilnicos, foi o baco. O baco foi utilizado tambm pelos romanos e pelos chineses que mantm em uso at os dias de hoje no ensino da aritmtica bsica. A evoluo do baco s ocorreu no sculo XVII(1642), proporcionada pelo trfego e matemtico francs Blaise Pascal que construiu um contador mecnico que realizava operaes aritmticas de soma e subtrao atravs de rodas e engrenagens dentadas. Cada engrenagem continha 10 dentes que, aps um giro completo, acarretava o avano de

um dente de uma segunda engrenagem, exatamente o mesmo princpio de um odmetro de um automvel e base das calculadoras mecnicas. O alemo Gottfried Leibniz, tambm filsofo e matemtico aperfeioou o invento de pascal. Construiu uma calculadora que executava as quatro operaes bsicas da aritmtica , sendo que multiplicao e diviso eram realizados atravs de somas e subtraes sucessivas , respectivamente . A primeira utilizao prtica de dispositivos mecnicos para computar dados automaticamente data de incio de 1801, quando Joseph Jacquard introduziu no processo de tecelagem, o controle das mquinas atravs de instrues registradas em orifcios em cartes perfurados. Um dos mais importantes trabalhos pioneiros em computao por processos mecnicos foi realizado pelo ingls Charles Babbage, que em 1823, foi contratado pelo governo ingls para produzir uma calculadora programvel, capaz de gerar as tabelas de navegao para a Marinha Britnica. Na poca, as tabelas eram escritas manualmente por diversos funcionrios que tinham duas tarefas bsicas: 1) Realizar sucessivas e repetidas operaes de adio e multiplicao; 2) Escrever os resultados. Foi constatado que, devido natureza permanente e repetitiva do processo realizado por pessoas, ocorriam erros (tanto nos clculos, quanto no registro dos resultados). Babage projetou dois tipos de mquina: a mquina de diferenas e a mquina analtica. A mquina de diferenas utilizava o processo matemtico de diferenas finitas - s realizava operaes de adio e subtrao e como a mquina

de Pascal, possua um conjunto de registradores mecnicos, cada um contendo rodas com dgitos que serviam para armazenar um valor decimal. A mquina era movida por um motor a vapor, que realizava uma srie de etapas e finalmente apresentava um resultado. Alm disso, ela possua um dispositivo de gravao em uma chapa de cobre, uma espcie de agulha que marcava os valores na chapa, a qual servia de matriz para posterior impresso em papel. Este processo de gravao pode ser considerado como pioneiro em termos de dispositivos de armazenamento secundrio. A mquina analtica era, na realidade, um computador mecnico capaz de armazenar 100 nmeros de 20 algarismos e que possua um programa que permitia modificar o funcionamento da mquina, fazendo a realizar diferentes clculos. Por esta capacidade, pode - se dizer que esta mquina foi a percussora dos primeiros computadores eletrnicos, inclusive no seu mtodo de introduzir instrues por cartes perfurados. Embora inteiramente mecnica, a mquina analtica de Babbage possua essencialmente os mesmos componentes que um computador atual, quais sejam:

Memria Constituda de rodas dentadas de contagem; Processador: Com uma unidade capaz de realizar as quatro operaes aritmticas (operando com pares de registradores) e unidades de controle, constituda de cartes perfurados convenientemente para realizar esta ou aquela operao;

Sada: Para impressora ou para um dispositivo perfurado de cartes. O projeto final de Babbage, que pretendia calcular valores com 50 algarismos, nunca chegou a se tornar realidade fsica, por ser avanado

demais para uma poca em que a tecnologia no dispunha da devida capacidade para a fabricao dos dispositivos necessrios ao funcionamento das engrenagens. O projeto de Babbage tambm fez ressaltar alguns detalhes Histricos, como o tempo estimado para execuo de adio - um segundo - e de multiplicao - um minuto - e que o programa criado para fazer a mquina funcionar foi desenvolvido por uma mulher chamada Ada ovelace, que pode ser, ento considerada a primeira programadora de computadores da histria e que surgiu de nome para uma linguagem moderna de programao ADA desenvolvida para o departamento de defesa dos EUA. 1.2.2 Dispositivos Eletromecnicos (1880-1930) Com a inveno do motor eltrico no fim do sculo passado, surgiu uma grande quantidade de mquinas de somar acionadas por motores eltricos, baseados no princpio de funcionamento da mquina de Pascal. Em 1889, Herman Holleritrh desenvolveu o carto perfurado para guardar dados e tambm uma mquina tabuladora mecnica, acionada por um motor eltrico, que contava classificava e ordenava informaes armazenadas em cartes perfurados. A sua inveno utilizava na apurao do censo americano de 1890 pelo Bureau of Census dos EUA, que contratou Hollerith. O trabalho durou apenas dois anos e meio, o que manualmente levaria 10 anos O sucesso de Hollerith o conduziu a criao da Computer Tabulating Machine Company, em 1896, que em 1914 juntou-se a mais duas e surgiu a tabulating Recording Corporation. Em 1924, Thomas Watson mudou o nome da empresa para IBM - International Business Machine.

Os cartes perfurados foram utilizados at a dcada de 80, como um dos principais elementos de entrada de dados dos computadores. A primeira mquina de calcular eletrnica foi criada pelo engenheiro alemo Konrad Zuse, Chamada Z1. Baseava-se em rels eletromecnicos que atuavam como chaves, abrindo e fechando automaticamente o fluxo de corrente eltrica, o que levou utilizao de nmeros binrios em vez de algarismos decimais, utilizados nas engrenagens da mquina de Babage. Com o aperfeioamento, a mquina passou a ter um teclado como dispositivo de entrada e l6ampadas como sada. Em 1941, Zuse concluiu o Z3 que era controlado por um programa, sendo talvez o primeiro computador operacional do mundo. O modelo Z4 foi utilizado por militares alemes para auxiliar no projeto de avies e msseis durante a Segunda Guerra, os bombardeiros aliados destruram a maior parte dos computadores construdos por Zuse, restando apenas o registro histrico dessas invenes. Outro inventor desta poca foi o americano Howard Aiken, fsico e matemtico, que desenvolveu o computador chamado MARK I, utilizado os princpios de Babage, ou seja, com engrenagens decimais. O MARK I foi concludo em 1944, era capaz de armazenar 72 nmeros, realizar uma soma em seis segundos e uma diviso em doze, e as instrues eram introduzidas na mquina atravs de fita de papel perfurada. Est mquina tornou-se obsoleta antes de operar comercialmente em escala, pois a eletrnica j comeava a substituir os componentes eletromecnicos pelas vlvulas, muito mais rpidas. 1.2.3Componentes eletrnicos (1930-1945)

Os sistemas de armazenamento e chaveamento utilizado nos computadores eletromecnicos desgastavam-se com o tempo, tornandoos lentos e no muito confiveis os seus resultados. Esses problemas foram solucionados com a utilizao da vlvula, (inventada em 1906) que permitiam maior velocidade de processamento e armazenamento, pois no necessitavam de partes mecnicas para realizar as operaes. Desta poca, destacam-se dois cientistas, o ingls Alan Turing que desenvolveu um computador com a finalidade nica de decifrar cdigos militares alemes, portanto uma mquina de emprego especfico, denominado Colossus. O outro foi John Macuchilyn, um dos construtores do ENIAC, que foi reconhecido como o que deu incio computao eletrnica. A evoluo dos computadores eletrnicos est dividida em gerao que so caracterizadas de acordo com o elemento bsico utilizado na fabricao do processador central, como veremos a seguir. 2.GERAES DE COMPUTADORES ELETRNICOS 2.1Primeira Gerao: Computadores vlvula O ENIAC (Eletrnic Numeral Integrator And Computer) foi o primeiro computador eletrnico digital construdo para emprego geral, isto , podia-se alterar o tipo de clculo a ser realizado com os dados, mudando-se o programa. Esta mquina foi projetada por John Macuchlyn e John P. Eckert, de 1943 a 1946 e funcionou at 1955. O projeto foi proposto ao exrcito americano com a finalidade de auxiliar nos clculos de elaborao das tabelas balsticas (alcance e trajetria dos tiros de armas), que na poca empregava mais de 200 pessoas e gastavam muito tempo para sua confeco.

O ENIAC era uma mquina de propores gigantescas, contendo mais de 17.000 vlvulas e 800.000 metros de cabos; pesava cerca de 30 toneladas e consumia uma grande quantidade de energia eltrica, alm do consumo com vlvulas, que queimavam com grande freqncia devido ao calor. Como s ficou pronto aps a guerra no foi utilizado para o seu propsito inicial. Esta mquina era decimal e no binria, sendo cada dgito representado por 10 vlvulas, e sua programao era feita atravs da combinao de cabos em tomadas diferentes e de arranjo de chaves (cerca de 6.000), tarefas que consumiam vrios dias, porm, a sua velocidade de processamento era alta, realizava 10.000 operaes por segundo. Nesta mesma poca, John von Neumann, colaborador no projeto ENIAC iniciou o projeto do inicialmente chamado IAS (Institute for Advanced Studies da Universidade de Princeton) que era um aperfeioamento do ENIAC. Enquanto Macuchlyn e Eckert iniciaram a construo do EDVAC (Eletronic Discret Variable Automatic Computer), este projeto no foi concludo pois os dois cientistas deixaram a Universidade para criarem sua prpria empresa , que mais tarde tornou-se a Univac que, uniu-se Burroughs e atualmente denomina-se UNISYS. Jhon Von Neumann assume o desenvolvimento do EDVAC e define uma arquitetura de computadores com programa armazenado que utilizada at os dias atuais. Em 1949, a univac de Macuchlyn e Eckert, construiu o primeiro computador para fins comerciais, O UNIVAC II e a srie 1110, voltada para computao cientfica. Em 1953, a IBM lana seu primeiro computador eletrnico de programa armazenado, o IBM-701, com memria de 2K palavras de 36 bits,

destinado ao processamento cientfico, e em seguida os IBM-702 e 709, com 4K palavras de memria, para fins comerciais. 2.2Segunda Gerao : Computadores transistorizados Os cientistas do Bell Laboratries produzem em 1947 o transistor. Dispositivos que permite controlar a conduo de corrente eltrica de circuito eletrnico (ligar/desligar) com uma velocidade muito maior, menor custo, menor tamanho e menor consumo de energia do que as vlvulas. Esse dispositivo tornou-se a base de todos os computadores e da industria eletrnica digital. A NCR foi a primeira empresa a lanar o computador transistorizado, seguido da RCA. Esta Gerao teve grande participao da IBM com seus computadores para fins comerciais e cientficos, por exemplo, a srie 7000 e grande sucesso comercial que foi o IBM-1401. Marcaram, tambm esta gerao, o surgimento da DEC (Digital Equipment Corporation), que tambm lanou mquinas eficazes tecnologicamente, com nvel superior ao famlia VAX e, o aparecimento de linguagens de programao com nvel superior ao Assembly. 2.3 Terceira Gerao: Computadores com circuitos integrados Em 1958 a Texas Instruments Co, atravs de Jack Kilby, criou o que seria o primeiro circuito integrado, interligando dois circuitos em pea de germnio. Pouco depois, Robert Noyce integrou vrios circuitos em pastilha de silcio, que provou ter muita vantagem sobre o germnio. Surgia uma nova gerao de computadores mais poderosos e menores, devido a integrao em larga escala (LSI-Large Scale Integration) Proporcionada pelos circuitos integrados. A IBM, nesta gerao, consolida sua posio como a maior fabricante no mercado de computadores , pois utilizou-se dos novos avanos

tecnolgicos da microeletrnica e lanou a srie 1360. Este sistema incorporou diversas inovaes que se tornaram um marco histrico em termos de computao, dentre elas, podemos citar: a) O conceito da famlia de computadores, em vez de mquina individual. Este conceito permite que o fabricante oferea o mesmo tipo de mquina, ou seja, mesma arquitetura, linguagem de mquina semelhante etc, porm com diferentes capacidades e preos , o que garantia uma maior quantidade de clientes . Como por exemplo, a famlia 360 foi lanada com cinco modelos diferentes. A figura 1.3 mostra um quadro comparativo da famlia 360. b) Emprego da tcnica de multiprogramao, que permite que vrios programas compartilhem da mesma memria principal e o mesmo processador, dando a impresso ao usurio de que vrios programas esto sendo executados simultaneamente. c) Elevada capacidade de processamento, com palavras de 32 bits e ciclo de instrues de at 250 nanosegundos e grande capacidade de armazenamento na memria principal, 16 Mbytes, valores considerados surpreendentes para a poca (1964). d) Memria Principal orientada a Byte, ou seja, em grupo de oito Bytes. Esta caracterstica tornou-se padro no mercado, mantendo-se at hoje; exceto nos computadores cientficos. Surgiram tambm, nesta gerao, os microcomputadores da Dec, com circuitos integrados, memria principal orientada a byte e palavra de 16 bits, o PDP-11 e o seu sucessor, o VAX-11 que teve grande sucesso no ambiente universitrio. CARACTERSTICA

DA FAMLIA IBM 360 Modelo Modelo Modelo Modelo 30 40 50 65

Caracterstica

Modelo 75

Capacidade mxima de MP (Bytes) Ciclo do Processo em micros segundos Quantidade mxima de canais 3 (E/S) Bytes movidos da MP para UCP por 1 ciclo Figura 1.3 - Caractersticas da Famlia IBM/360 2.4Quarta Gerao: Computadores que utilizam VLSI VLSI (Very Large Scale Integration) consiste na tcnica de armazenar, em um mesmo recipiente, milhes de microcomponentes eletrnicos. Este dispositivo denominado chip (pastilha), constitui a base da estrutura da todos sistemas de computao modernos. Esta tcnica de miniaturizao de componentes eletrnicos deu incio ao desenvolvimento dos microcomputadores ou computadores pessoais, isto por volta de 1972. 2 4 16 16 3 4 6 6 1 0,625 0,5 0,25 0,2 64 Kb 256 Kb 256 Kb 512 Kb 512 Kb

2.5 Evoluo dos Microcomputadores Em 1971, a Intel Corporation produziu a primeira CPU em um nico chip de circuito integrado, com cerca de 2.300 transistores e palavra de 4 bits, chamada de INTEL - 4004. Esta CPU foi desenvolvida para equipar uma calculadora. Em seguida, foi lanado o microprocessador 8008, com 8 bits de palavra , 16K de memria e cerca de 3.500transistores, tambm com a mesma finalidade. Em 1973, a Intel lana o 8080, o primeiro microprocessador de emprego geral do mundo. O 8080 possua cerca de 5.000 transistores, palavras de 8 bits, podia enderear at 64 Kbytes de memria e conjunto de 78 instrues de mquina. Com este lanamento, a Intel assume o mercado de microprocessadores, vendendo milhes de exemplares e desenvolvendo novos produtos, at o lanamento do seu top de linha, o Pentium, com cerca de 3,5 milhes de transistores em um nico chip. A figura 1.4 mostra um quadro comparativo entre as principais caractersticas dos microprocessadores de maior mercado Quadro Comparativo de Caractersticas de Microprocessadores Data de Microprocessador Lanament o Intel 4004 1971 Dados 4 1 K Bytes Palavra de Endereamento Mximo de MP

Intel 8080 Intel 8088 Intel 80286 Intel 80386 Intel 80486 Intel Pentium

1973 1980 1982 1985 1989 1993

8 16 16 32 32 32 8 32 32 32 32 32 8 16

64 K Bytes 1 K Bytes 16 M Bytes 4 G Bytes 4 G Bytes 4 G Bytes 64K Bytes 16 M bytes 16 M Bytes 4 G Bytes 4G bytes 4 G bytes 64 K bytes 1M Bytes

Motorola MC 6800 1974 MC 68000 MC 68010 MC 68020 MC 60030 MC 68040 Zilog Z80 Zilog Z80 1979 1983 1984 1987 1989 1974 1979

Figura 1.4 - Quadro comparativo de caractersticas de microprocessadores.

Outros fabricantes tambm desenvolveram microprocessadores, citados acima, como a Motorola, que equipa os microcomputadores Machintoshi(Aplle) e Amiga(da Comodore). A Zilog, constituda pelos dissidentes da intel, deixou o mercado de microcomputadores de emprego geral e s fabrica microprocessadores especficos para controle de processos . EXERCCIOS: 1 Conceitue os termos dados e informao, no que se refere a seu emprego em processamento de dados. 2 Caracterize as etapas principais de um processamento de dados. 3 Conceitue um sistema. 4 O que voc entende por um programa de computador? 5 Conceitue os termos Hardware e Software. 6 O que e para que serve uma linguagem de programao de computador? 7 Quem desenvolveu a mquina analtica? 8 Qual foi a caracterstica marcante do censo de 1890 dos EUA, no que se refere a contabilizao dos dados levantados? 9 Qual foi o propsito que conduziu ao desenvolvimento do primeiro computador

eletrnico do mundo? 10 Qual foi o primeiro microprocessador de 8 bits lanado comercialmente? Qual o nome da empresa proprietria? 11 Quais eram as caractersticas bsicas da arquitetura proposta pelo Dr. Jhon Von Neumann? 3.COMPONETES BSICOS DE UM SISTEMA DE COMPUTAO 3.1DESCRIO DOS COMPONENTES Um sistema de computao constitudo de um conjunto de componentes integrados que tem por finalidade manipular dados de forma a se obter informao. No capitulo anterior, vimos os conceitos de hardware e software, que formam basicamente um sistema de computao. Para que um computador possa realizar uma determinada tarefa necessrio a integrao destes elementos. Uma tarefa deve, primeiro ser escrita em uma linguagem (de programao) que possa ser convertida para linguagem de mquina, pois s esta entendida pelo hardware do computador e, logicamente, nesta linguagem, sero executadas todas as operaes a ele submetidas. A converso transforma o programa em vrias instrues que sero executadas uma a uma e, as armazenem na memria. Tambm devem ser introduzidos na memria, os dados a serem manipulados pelo programa. A introduo dos programas e dados em um computador pode ser feita atravs do teclado ou disco, por exemplo, a estes equipamentos

chamamos de dispositivos ou perifricos de entrada. O processador central - CPU (Central Unit Processing), localiza, interpreta e executa as instrues sobre os dados encontrados na memria e armazena o resultado, tambm na memria. Os resultados de um processamento podem ser exibidos ao usurio, numa forma inteligvel para ele, em um monitor de vdeo impresso em papel, ou armazenado em outro formato para posterior utilizao; como por exemplo, em discos magnticos. Aos dispositivos utilizados para estas finalidades, denominamos dispositivos ou perifricos de sada. A figura 2.1 mostra, esquematicamente os procedimentos e os componentes bsicos envolvidos n processo de dados. Figura 2.1 - Componentes Bsicos de um Computador. Unidade Central de Processamento - o principal componente do sistema. Responsvel pela execuo e controle de todas as operaes executadas por todos os componentes do computador.UCP ou CPU Memria Local onde os dados e os programas so armazenados para imediata execuo (memria Principal - MP) ou para uso posterior (memria secundria - MS), conforme veremos no prximo captulo. Perifricos ou dispositivos de Entrada ou Sada Basicamente permitem a comunicao entre o sistema e o mundo externo, ou seja, introduzir dados e/ou programas e guardar e/ou exibir resultados. Tambm chamamos os perifricos que armazenam dados de memria secundria.

Nos captulos seguintes, esses componentes sero vistos detalhadamente. 3.2REPRESENTAO DAS INFORMAERS NO COMPUTADOR 3.2.1Bit, Caracter, Byte e Palavra Os computadores so equipamentos eletrnicos digitais. Portanto, toda informao a ser armazenada, movimenta e processada internamente, deve ser transformada para o formato binrio. Os circuitos eletrnicos digitais permitem que represente os valores de voltagem eltrica de seus componentes com os dois dgitos do sistema binrio (0 e 1). O principio de funcionamento dos circuitos digitais totalmente bsico na lgica digital ou booleana, que admite apenas dois estados para um nico elemento (SIM/NO, LIGADO/DESLIGADO, ABERTO/FECHADO etc.). Em vista disso, teremos como menor unidade de informao que pode ser armazenado em um computador, o conhecido bit (Binary Digit), que admite apenas dois valores: 0 e 1. Um bit nos permite representar apenas duas informaes, ou smbolos, um de cada vez, e a linguagem humana possui vrios smbolos (Caracteres); por essa razo , as informaes manipuladas pelo computador so codificadas em grupo ordenados de 8 bits, chamados byte(Binary Term). O nome Byte foi institudo pela IBM e, utilizado por praticamente todos os fabricantes como unidade de armazenamento e transferncia de dados. Os caracteres podem ser codificados com outras quantidades de bits diferentes de 8, atravs de outros cdigos de representao de caracteres, porm , neste trabalho , usaremos sempre o conceito de byte. Vejamos um Exemplo:

Com 8 bits possvel representar um grupo de 256 smbolos diferente, como o caso dos caracteres padres utilizados pela maioria dos computadores. Como cada bit pode assumir dois valores e utilizamos 8 bits , ento, teremos: 2xonde: 2 o nmero de valores assumidos por um bit e, X a quantidade de bits utilizados 28 = 256 combinaes diferentes, cada uma representando um caracter. Por conseguinte, com 3 bits, podemos representar 8 diferentes smbolos , com 5 bits, 32 smbolos; com 9 bits, 512 smbolos e assim por diante. Nas memrias dos computadores as operaes de armazenamento e recuperao de informao so realizadas byte ou palavra a palavra (grupo de bytes), unidades de transferncias. Portanto, costume mencionar a quantidade de mercadoria do computador em bytes. Porm, um byte armazena apenas um caracter e precisamos de muito mais para escrever um simples nome, como por exemplos, logicamente, precisamos de quantidades maiores de memria para efetuar qualquer trabalho. Para representar valores maiores, - que aumentam a cada dia utilizaremos os smbolos de grandezas mtricas, com alguma modificao, visto que nos computadores as indicaes numricas so tratadas em potncia de 2 (Sistema binrio, lembra-se ?).

Vejamos alguns exemplos: 8 bits1 byte 1024 bytes (potncia de 2 1.024 = 2Kilobytes ou KB 10) 1024 KB ou 1.024 x 1.024 = 1.048.576 bytesMegabytes ou MB Gigabytes 1.024 MB = 1.048.576 x 1024 = 1.073.741.824 bytes 1024 x GB = 1.073.741.824 x 1024 = 1.099.511.627.776 bytesTerabytes ou TB Um outro conceito importante para o armazenamento e transferncia de dados entre a MP e a UCP a palavra. A definio de palavra no atende rigorosamente a todos os fabricantes de computadores, pois cada um adota o conceito baseado em seus componentes internos e outro, de uma forma mais abrangente. De modo geral, usam-se dois valores diferentes: um relacionado unidade de armazenamento - o Byte (oito Bits) e outro para indicar unidade de transferncia e processamento - a palavra (na qual empregase quantidades mltiplas do byte - 16 (2 bytes) ou 32 (4 bytes, so os valores mais usados ). Atualmente, os micros Pentium e similares, utilizam palavra com 32 bits, enquanto que mquinas com processador RISC, da DEC, empregam 64 bits. Conceitos aqui citados sero mais bem detalhados nos captulos seguintes.

3.2.2Arquivos e Registros e Campos J sabemos que uma tarefa efetuada por um computador, a execuo de um programa (conjunto de instrues) sobre os dados e, que estes dois elementos devem estar armazenados na memria principal para que haja o processamento. Os conceitos utilizados para arquivo, registro e campos em processamento de dados, tm exatamente o mesmo significado e a mesma aplicao para a Administrao, ou mesmo para a vida prtica. Tanto os programas quanto os dados so identificado por grupos distintos de armazenamento denominado arquivo. O arquivo , portanto, um conjunto organizado de dados de um mesmo tipo ou para uma mesma aplicao. Por exemplo, o arquivo dos produtos de uma loja, contendo informaes individuais de cada produto, ou contendo as instrues de um programa. Um arquivo formado por um conjunto de itens individuais de informao (como cada produto, no exemplo), denominadosregistros. Assim, um arquivo que possua 500 produtos, ter 500 registros. O registro constitudo de dados elementares, denominados campos, que armazenam caractersticas de cada registro armazenado no arquivo (como o cdigo de um produto, no exemplo). Para melhor entendermos os conceitos citados acima, vamos fazer uma analogia a um sistema manual de controle de produtos de uma loja de produtos de limpeza possua 5.000 itens diferentes em seu estoque e necessite controlar a entrada de produtos. Vejamos como isso acontece na prtica:

As informaes sobre os produtos so escritos em uma ficha padronizada, uma para cada produto(registro), estruturada em campos separados para cada um dos dados elementares sobre o produto, tais como: cdigo do produto, nome do produto, fornecedor, preo unitrio etc; As fichas so guardadas em uma gaveta (arquivo), somente para produtos, que sero identificados com um nome que lembre o seu contedo. A figura 2.2 Exemplifica a estrutura de um arquivo de dados. 3.3CLASSIFICAO DE SISTEMAS DE COMPUTAO No existe um consenso no mercado em relao classificao dos computadores. no entanto, uma descrio bsica de cada tipo de mquina comumente utilizado atualmente nos ajudar a identificar as principais nomenclaturas. Microcomputador - O nome relativo ao seu tamanho e sua capacidade de processamento; surgiu com advento dos microprocessadores nos meados da dcada de 70. O micro, por ser utilizado por uma nica pessoa de cada vez, ganhou ttulo de PC (Personal Computer). Existem, hoje em dia vrias categorias de microcomputadores, baseadas em seus tamanhos e seu grau de portabilidade. Eles podem ser do tipo de mesa ou torre (Desktop), em geral, constitudo por 3 partes separadas: unidade de processamento(UCP, acionadores de discos e memria), monitor de vdeo e teclado. Outros microcomputadores, ainda menores so conhecidos por Notebooks (tamanho e formato parecidos com um livro) e Palmtops que tm tamanho pouco maior que a da palma da mo.

Podemos citar como exemplos de micros, os das marcas IBM, Compaq e Machintoshi. Estas marcas fabricam o microprocessador e os demais componentes, no entanto, encontramos com mais freqncia no mercado, micros com processadores de um fabricante e os demais componentes fabricados por vrios outros. Os principais de microprocessadores so Intel, AMD e Cyrix. Estao de Trabalho - um micro projetado para efetuar tarefas mais pesadas nas reas industriais, Cientificas e gerais. Estas mquinas possuem maior velocidade de processamento e capacidade de memria, requeridas por tarefas com CAD (Computer Aided Design), CAM (Computer Aided Manufacturing) e composio, manipulao e apresentao de imagens de altssima resoluo. Como exemplo, podemos citar: DECstation 5000/33, IBM RS/6000 Minicomputadores - So mquinas empregadas para atender simultaneamente a demanda de execuo de programas de vrios usurios. Para suportar mltiplos usurios e programas, requer maior velocidade /capacidade de memria e uma grande potencialidade para manipular diversos perifricos. Exemplos para essas mquinas so: VAX-11/780, AS400 da IBM Computadores de Grande Porte - So computadores projetados para manusear grandes volumes de dados e executar simultaneamente programas de uma grande quantidade de usurios e gerenciar unidades de armazenamento em grande escala. Processos controlados por estes tipos de mquinas operam com tempo de resposta muito rgidos, na casa de dcimos de segundos. Exemplos tpicos so sistemas IBM 3090 e o Control Data CDC 6600.

Supercomputadores - So computadores construdos para atender um propsito especfico; realizar grandes quantidades de clculos matemticos com grande velocidade, o que exige muito do processador e pouco dos demais componentes. So empregados em tarefas como: Previso do tempo, simulao de situaes que gerariam riscos a pessoas, modelagem tridimensional. Estas mquinas so capazes de realizar dois bilhes de operaes matemticas por segundo. Exemplos deste tipo de mquina so o Cray Y-MP e o IBM 90221. 3.3.1EXERCCIOS 1 Explique o que voc entende por memria. Cite exemplos de memria na vida prtica (evite usar exemplo de memria de computador). 2 Descreva as funes de uma Unidade Central de processamento. 3 Faa o mesmo para a memria de computador. 4 Para que servem os dispositivos de entrada e sada de um computador. Cite alguns exemplos. 5 Imagine uma empresa qualquer. Cite exemplos de arquivos e registros a serem criados para o armazenamento das informaes que circulam na tal empresa. 6 conceitue o bit, o byte e a palavra. 7 Em que um supercomputador difere de um computador de grande porte?

8 Quais so as principais caractersticas que definem um microcomputador? 9 Qual a diferena entre linguagem de alto nvel e linguagem de mquina? 4.SUBSISTEMA DE MEMRIA A memria um componente do Sistema do Computador, cuja funo guardar (armazenar) informaes (na forma de bits) e recuper-las usando desejado. Seu funcionamento baseia-se nas aes de escrita (transferncia de bits de outro componente do Sistema; por exemplo: da UCP de um disco) e de leitura (transferncia de bits da memria para a UCP, disco, etc.). A ao de armazenar consiste em guardar uma informao (ou um conjunto de informaes) na memria e a operao denominada escrita ou gravao (write). Esta operao ser sempre uma sobreposio de contedos da memria. Recuperar uma informao (ou um conjunto de informaes) da memria copi-la para uma outra posio na memria ou para outro componente do sistema. Esta operao denominada leitura (read). A ao de armazenar ou recuperar uma informao em uma memria denomina-se acesso. No sistema de computador existe uma variedade grande de tipos de memria, cada uma com sua finalidade e caracterstica especificas, mas que interligam e se integram para o funcionamento do sistema. A figura 4.1 mostra uma pirmide hierrquica dos tipos de memria, mais mencionados, representando suas capacidades de armazenamento, velocidade, tempo de uso e custo.

Figura 4.1 Pirmide Hierrquica de tipos de memria 4.1Registradores J sabemos que a UCP responsvel pela execuo das instrues (parte de um programa), manipulao dos dados e pela produo dos resultados. Porm, para isto ocorrer, tanto o programa quantos dados, que esto armazenados na memria principal, devem ser transferidos para UCP (uma cpia deles). A execuo , na realidade, tarefa da UAL (Unidade Aritmtica e Lgica), Componente da UCP. Os registradores so unidades de memria que armazenam, temporariamente, na UCP, os dados a serem manipulados por uma instruo ou seus resultados parciais ou finais de um processamento . Sendo um resultado parcial, armazenado em um registrado, este ser transferido para a memria principal (externa a UCP). O registrador o tipo de memria com maior velocidade de transferncia no computador, menor capacidade de armazenamento (armazena um nico dado) e maior custo devido a sua tecnologia de construo . Ele uma memria se semicondutores, portanto, voltil, ou seja, para o seu funcionamento necessrio que haja corrente eltrica. 4.2Memria Cache Durante a execuo de uma instruo, a UCP realiza um ou mais acessos memria principal, para buscar a instruo e transferi-la para um dos registradores, para transferir os dados para a UAL ou para armazenar o resultado de operao que se encontra em um registrador.

O tempo de acesso memria principal muito maior que o tempo de execuo de uma instruo, devido a diferena de velocidade entre a UCP e a MP (Memria Principal). Isto causa ociosidade da UCP, pois esta precisa esperar que a instruo e os dados sejam transferidos para a UCP. A CACHE uma memria construda com tecnologia similar da UCP, consequentemente, com velocidade de transferencia compatvel, reduzindo consideravelmente o tempo de espera da UCP por instrues e dados. A cache est inserida entre a UCP e a MP; no mesmo CHIP da UCP (cache interna). A sua capacidade de armazenamento baixa, se compara com a MP, atualmente 8 Kbytes. A UCP acessa, primeiramente, a CACHE, para buscar a informao requerida. Caso encontre, a transferncia; realizada com grande velocidade; caso contrrio, a informao ter que ser transferida da MP para a cache e da para a UCP, aumentando o tempo de acesso. As memrias cache externas (localizadas na placa me) so constitudas de circuitos eletrnicos, portanto tambm volteis. A tecnologia empregada; a SRAM (Static RAM) - a corrente eltrica que mantm as informaes armazenadas na cache contnua - no sendo necessrio a recarga peridica de seus circuitos (refreshing), como ocorre na memria principal. Esta tecnologia possui custo elevado, causa da sua utilizao baixa capacidade de armazenamento. 4.3Memria Principal A memria principal, ou memria primria, formada por dois tipo a de memria: Memria RAM (Randomic Acess Memory) - memria de acesso aleatrio - o acesso a qualquer uma de suas posies consome o mesmo tempo e memria ROM (Read Only Memory) - memria somente de leitura - os dados nela contidos so gravados de fbrica, no sendo possvel alter-los , portanto, uma memria no voltil.

s informaes gravadas na ROM constituem basicamente um programa denominado IPL (Initial Program Load), que contm rotinas, especficas de cada processador, necessrias ao funcionamento do computador, tais como: contagem e checkeletrnico da memria RAM, as conexes da UCP com as interfaces que a interligam aos perifricos e a leitura do Sistema Operacional do disco para a memria RAM. Este programa executado, automaticamente, assim que ligamos o computador. Ao final da execuo do I.P.L e carga do Sistema Operacional est pronto para ser utilizado, o que, em ambientes de microcomputadores chamamos de boot. Isto devido ao Sistema Operacional D.O.S (Disk Operation System) utilizar o conceito de setor de boot nos discos que possuem o seu formato. A memria RAM a memria bsica do computador. Nela so armazenados, o programa a ser executado e seus dados, que a UCP busca, instruo por instruo, portanto, nesta memria podem ser executadas tanto as operaes de leitura quanto asa de gravao . Doravente, quando nos referimos memria principal ou primria, estaremos tratando apenas da RAM, onde podemos, tambm, gravar dados. A MP construda, tambm, de semicondutores, portanto, voltil e com grande velocidade de acesso; abaixo, porm, dos registradores e da cache. Devido a sua finalidade, possui grande capacidade de armazenamento. Atualmente, os microcomputadores possuem memria principal de 4, 8, 16 e 32 MB (Mega Bytes); embora estes possam enderear at 4 Giga Bytes. Computadores de grande Porte costumam funcionar com memria principal de at 512 Megabytes. A tecnologia utilizada nas memrias RAM , Geralmente, a Dram (Dinamic Ram) - a corrente eltrica neste tipo de memria depende da carga de capacitores, que com o tempo vo perdendo a carga,

necessitando de peridicas recargas (refreshing) para manter o valor do dado armazenado inalterado. O refreshing ocorre, geralmente a cada 2 ms (milisegundos 10 -3 seg), deixando a Ram indisponvel por um longo tempo , visto que esta operao demora muito mais que um acesso . Portanto, podemos constatar que em memrias Dram o tempo de acesso acrescido do tempo de refreshing, o que causa a sua baixa velocidade de transferncia de dados quando comparadas aos registradores e a memria cache. 4.4Memria Secundria A memria secundria, tambm chamada de auxiliar ou memria de massa, tem a finalidade de armazenar de forma permanente as informaes (dados e programas) necessrios ao processamento. Conseqentemente, a memria secundria no - voltil e possui maior capacidade de armazenamento que a memria principal. A memria secundria do computador pode ser constituda por diferentes dispositivos perifricos, tais como: discos magnticos rgidos (Hard Disk HD), discos e Fitas, so eletromecnicos e pem esta razo, seus tempos de acesso so relativamente altos, se comparados com os dos outros tipos de memria. Por exemplo, os discos rgidos possuem tempo de acesso na faixa de 10 mil segundos, o CD-ROM trabalha com tempos entre 200 e 800 mil segundos, enquanto as fitas, ainda mais lentas, podem gastar at segundos para ler um arquivo. Atualmente, os discos rgidos de microcomputadores possuem capacidade de armazenamento variando entre 600 Mbytes e 3 Gbytes. os CD-ROM tm capacidade de 600 MBYTES, nas fitas magnticas a

capacidade de armazenamento depende do comprimento e da densidade de gravao da fita . 4.5Memria Principal Neste item estudados a organizao e funcionamento bsico da memria principal, tendo em vista que j citamos suas principais caractersticas, no item 3.1.3. Sero descritas as operaes de escrita e leitura . 4.5.1Organizao da Memria Principal A memria principal de qualquer computador constituda como um conjunto de N clulas (unidades de armazenamento). Todas as clulas de uma memria principal possuem o mesmo tamanho, ou seja, so formadas pela mesma quantidade de bits, geralmente so organizadas em grupos de 8bits(1byte). Cada clula possui um endereo que identifica individual e seqencialmente a sua posio dentro do conjunto da memria principal. Cada clula armazena um grupo de M bits, que representa o seu contedo (pode ser dado ou parte dele, uma instruo ou parte dela). a figura 3.2 ilustra a definio de clula de memria principal. Uma informao pode ocupar mais de uma clula de MP (no caso de um dado booleano, ocupar apenas um bit - 0 ou 1), porm o seu endereo ser o da primeira clula ocupada. A quantidade de clulas que podem ser ocupadas por uma informao, denomina-se palavra, que por sua vez, tambm no possui um padro de tamanho, variando conforme o fabricante e seus interesses tcnicos e comerciais. O conceito de palavra geralmente utilizado como unidade de transferncia de dados entre a UCP e a MP, ou seja, quantos bits podem ser manipulados em um acesso.

A quantidade de bits transferida num acesso depende, tambm do tamanho do barramento de dados (elemento que transporta os bits entre a UCP e MP). Teoricamente, a MP deveria ser organizada por palavras seqncias, assim como, uma clula deveria corresponder a uma palavra, que isto no ocorre na realidade. Por exemplo, o processador Intel 80486 possui palavra e barramento de 32 bits e cada clula de memria armazena 8bits . j o processador Pentium possui palavra de 32 bytes, clulas de 8 bits e o barramento de dados tem 64 bits. OBS: Neste trabalho consideramos que uma clula de memria corresponde a uma palavra e representaremos endereo e contedo de uma clula em hexadecimal. A figura 3.3 exemplifica as observaes tratadas. Figura 3.2 Organizao bsica da memria principal Figura 3.3 Exemplificao da observao sobre memria principal. 4.5.2Operaes com a memria Principal A UCP realiza sobre a MP somente as operaes de leitura e gravao. Operao de Gravao (Write) - armazenar informao na memria principal. Operao de leitura (read) - recuperar uma informao armazenada na memria.

Para que estas operaes ocorrem, so, necessrios outros elementos que compes a ligao entre a MP e a UCP. Portanto, vamos defin-los neste item,. Ver Figura 3.4. Barramento de dados Interliga a RDM MP, para transferncia de informaes entre a MP e a UCP. Barrramento de dados bidirecional, isto , os sinais percorrer o barramento da UCP para a MP (leitura) ou MP para UCP (escrita). Barramento de dados formado por conjunto de fios ((por cada fio passam um dos bits da palavra de dados). Portanto , o tamanho de dados , em bits , igual ou superior ao de uma clula de memria ). Registrador de dados de Memria (RDM) Armazena, temporariamente, a informao (contedo de uma ou mais clulas) que est sendo transferido da MP para UCP ou da UCP para a MP. Possui o mesmo tamanho do barramento de dados.- Memory Buffer Register (MBR) Barramento de endereos Interliga o REM MP para transferncia dos bits que representa o endereo de uma posio de memria que ser utilizada em um acesso. Este barramento unidirecional, visto que somente a Ucp aciona a MP para realizao das operaes de leitura e Gravao. Possui tantos fios quantos so os bits que representam um endereo de memria. Registrador de memria (REM) (MAR) Registrador que armazena, temporariamente, o endereo da posio de memria que ser acessada. Possui a mesma capacidade de armazenamento, em bits, do REM e do barramento de endereos. Barramento de controle Interliga a UCP MP para passagem de sinais de controle durante uma leitura ou gravao. Este Barramento

bidirecional, pois a UCP pode enviar sinal para a MP indicando que a operao a ser realizada de leitura (read) ou de escrita (write) e a MP pode enviar sinal de WAIIT (para a UCP aguardar o trmino de uma operao). Registrador de Instruo (RI) Registrador que tem finalidade de armazenar a instruo a ser executada pela UCP. A instruo a ser executada pela UCP. A instruo transferida da MP, via barramento de dados a RDM, para RI. Contador de Instrues (CI)- Program Counter (PC) registrador que armazena o endereo da prxima instruo a ser executada . ele determina a seqncia de execuo de um programa. No incio do ciclo de instruo, o seu contedo incrementado (CI = CI+1) e passa a armazenar o endereo de memria da prxima instruo na seqncia. Barramento de controle Barramento de endereos Barramento de dados Figura 3.4 - Barramento de Ligao UCP - Memria Principal 4.5.3Operao de Leitura Uma operao de leitura constituda de algumas etapas, isto , micro operaes realizadas para transferir uma informao da MP para UCP. O tempo decorrido para a realizao de todas as etapas de um acesso, denomina-se tempo de acesso e o intervalo de tempo entre duas operaes consecutivas , chama-se ciclo de memria . Nas memrias do tipo SRAM, o tempo de acesso igual ao ciclo de memria. J nas

memrias DRAM, o ciclo de memria acrescido de tempo derefreshing e denomina-se de ciclo de mquina. Nas memrias do Tipo DRAM, o tempo de acesso ou ciclo de memria est entre 50 e 100 ns (nonosegundos - 10-9seg) e nas SRAM, em torno de 30 ns. Independente do tipo de memria principal, o tempo de acesso a qualquer posio ser sempre igual; o que caracteriza oacesso aleatrio da MP. Seqncia de passos de gravao. 1. A Unidade de Controle (UC) transfere o endereo desejado (C6A7) do registrador de instrues (RI) para o registrador de endereos a de memria (REM); 2. O endereo desejado contido no REM,, colocado no barramento de endereos ; 3. A UC envia para a memria Principal (MP) um sinal de leitura (READ), atravs do barramento de controle; 4. A MP identifica a posio de Memria, cujo endereo est contido no REM e transfere o seu contedo para o RDM atravs do barramento de dados. Dai, ento, para o registrador de instrues (RI) na UCP. Aps a leitura, os dados so transferidos para outros registradores de uso geral, onde sero processados de acordo com Instruo a ser executada pela UCP. A figura 3.5 ilustra uma operao de leitura

AB END. 0000 END C6A7 END. FFFF UCP CI RI I C6A7 UC A8 Figura 3.5 Exemplo de operao de leitura 4.5.4Operao de Gravao A operao de gravao segue procedimento similar ao da operao de leitura, diferenciando, logicamente no sentido da transferncia que da UCP para a MP. Seqncia de passos da operao de gravao: 1.- a unidade de controle (UC). Transfere o Endereo da Primeira posio de memria disponvel (3F1A), Registrador de Instruo (RI)

para o registrador de Endereos da Memria (REM); 2. - A UCP transfere o dado a ser armazenado (2B), de um Registrador de uso geral, para o RDM; 3. - A UC envia para a memria Principal (MP) um sinal de Gravao (Write), atravs do barramento de controle; 4. - O dado transferido do RDM para a posio de memria, indicada pelo endereo contido no REM. O tempo de acesso ou ciclo de memria o tempo gasto na realizao das etapas de leitura ou gravao. Se a memria for do tipo SRAM, ao final de acesso, a memria estar pronta para atender mais acesso. Sendo memria DRAM, a UCP aguardar o tempo de realizao de um refreshing da MP. A figura 3.6 ilustra uma operao de gravao. Figura 3.6 Exemplo de operao de gravao 4.5.5Capacidade da Memria Principal A capacidade da memria principal a quantidade de informao que nela pode estar contida. Como j sabemos que as informaes armazenadas esto organizadas em clulas de 8 bits (1 byte), podemos dizer que o seu tamanho em bytes. O tamanho ou capacidade da memria principal o produto da quantidade de clulas pelo tamanho desta. Portanto, teremos:

T = N x M; onde: Capacidade total da MpT Quantidade de clulas ou endereosN Tamanho da clula, em bits ou bytesM exemplo 3.1 Uma memria possui 2.048 clulas de capacidade igual a 8 bits (1 byte). Qual o total em bytes desta memria? soluo: Se N = 2.048 clulas e M = 8 bits (1byte), ento T= 2.048 X 8 = 16.384 bits Resposta: Total de bits = 16.384 ou 2.048 bytes ou 2 Kbytes. exemplo 3.2 Uma memria RAM tem capacidade de armazenamento igual a 4 Kbytes e cada clula tem tamanho de 16 bits. Pergunta-se: a) Qual a quantidade de clulas que podem ser endereadas? b) Qual o tamanho da barra de Endereos? c) Qual o tamanho da barra de dados?

d) Qual o tamanho do REM e do RDM? Soluo: M = 16 bits = 2 bytes T= 4 Kbytes = 4 x 1.024 = 4.096 bytes a) N = T/M = 4.096/2 = 2.048 clulas b) A barra de endereos deve possuir uma quantidade de bits capaz de enderear todas as clulas da memria RAM. Como esta MP possui 2.048 clulas, ento a barra de endereos precisa ter, o tamanho mnimo de 11 bits, pois 211 = 2.048. Quantidade de bits necessria para representar o valor 2.048 em binrio c) Pela barra de dados trafega o contedo das clulas. Por Tanto, seu tamanho mnimo igual ao tamanho da clula, que de 16 bits. d) O REM e o RDM devem ser de tamanhos compatveis com os seus contedos. O REM armazena endereos, logo deve ter o mesmo tamanho da barra de endereos, enquanto o RDM armazena dados, devendo ter o mesmo tamanho da barra de dados. Neste caso, RDM = 16 bits e REM = 11 bits. Exemplo 3.3 Um microcomputador possui o RDM com tamanho de 16 bits e a barra de endereos de 20 bits. Pergunta-se: a) Qual a capacidade mxima de armazenamento desta MP?

b) Qual o tamanho de cada clula de memria? c) Qual o tamanho da barra de dados? d) Qual o tamanho do RI e do CI? Soluo: Se RDM = 16 bits; barra de endereos = 20 bits e sabendo que, RDM = Barra de dados = clula = RI e REM = Barra de Endereos = CI. Teremos ento: a) Como o REM possui 20 bits e o RDM tem 16 bits, ento, N = 220 clulas e M = 16 bits; dai, temos T = N x M. T = 220 x 16 = 16.777.216 bits ou T = 2 Mbytes (1Mbyte = 1048.576 bytes) e (bits = bytes/8) b) clula = RDM = 16 bits c) Barra de Dados = RDM = 16 bits d) RI = RDM = 16 bits e CI = REM = 20 bits 3.2.2 - Memrias do tipo ROM

Memria PROM - (Programable ROM), memria ROM programvel. Tipo de memria cujo contedo gravado uma vez aps o processo de fabricao (a memria construda virgem e depois gravada), no podendo ser reutilizada. Memria EPROM - (Erasable PROM); memria prom apagvel. Aps a gravao, seu contedo pode ser apagado atravs de luz ultravioleta e gravar outra informao. Memria EEPROM (Eletronic EPROM) ou EAROM (Eletronic Alterable Rom) - Podem ser apagadas e reprogramadas para controle da UCP. Este tipo de memria muito empregado em configuraes de setup dos micros computadores e definio de Funes das teclas para aplicativos especficos. 4.6MEMRIA CACHE Como j foi descrito (ver item 3.1.2) a velocidade de processamento da UCP muito superior a de acesso memria principal , devido a diferena de tecnologia empregada na construo de cada um destes componentes. Isto gera perodos de espera (waite state) na UCP, at que os dados sejam transferidos da MP. Os Projetos de memria cache baseiam-se em estatsticas de execuo de programas, avaliando-se que os acessos, geralmente, so repetidos, as mesmas palavras de memria ou palavra localizadas continuamente na memria. So os conceitos de localidade temporal e localidade especial. Localidade Temporal - Quando um programa acessa uma palavra de memria, h uma grande probabilidade de que em breve a mesma palavra seja acessada novamente pelo Programa.

Localidade espacial Quando um programa acessa uma palavra de memria, h uma grande probabilidade de que o prximo acesso solicitado pelo programa seja a uma palavra de endereo subseqente ou adjacente quela que ele acabou de acessar. A figura 3.7 mostra a ligao UCP/cache/MP. (Cache interna) Transferncia bloco por bloco de palavras Figura 3.7 - Ligao UCP/ Cache/ Memria Principal EXERCCIOS 1 - O que voc entende por acesso memria? 2 - Quais so as possveis operaes que podem ser realizadas em uma memria? 3 Qual a diferena conceitual entre uma memria do tipo SRAM e outra do tipo DRAM? 4 Qual a funo do registrador de endereos de memria (REM)? E do registrador de memria (RDM)? 5 Descreva os barramentos que interligam UCP e MP, indicando funo e direo do fluxo de sinais de cada um. 6 Descreva passo a passo uma operao de leitura. 7 Descreva passo a passo uma operao de escrita.

5.UNIDADE CENTRAL DE PROCESSAMENTO J sabemos que a Unidade Central de Processamento (UCP) ou simplesmente processador o principal componente do Sistema. Responsvel pela execuo e controle de todas as operaes executadas por todos os componentes do computador. Neste captulo analisaremos o processador de uma forma mais detalhada, descrevendo suas funes bsicas:processamento (efetuada pela Unidade Aritmtica e lgica - UAL) e Controle (efetuada pela Unidade de Controle - UC). Um Programa constitudo de instruo de mquina e que deve estar armazenamento em clulas da memria principal para que seja executado pela UCP. A atuao da UCP neste processo consiste das seguintes atividades: a) buscar uma instruo na MP (Operao de leitura); b) Interpretar (decodificar) qual operao a instruo est indicando; c) buscar , na MP, os dados que sero manipulados pela instruo; d) Executar efetivamente a operao com os dados e guardar o resultado na MP; e) reiniciar o processo buscando nova instruo na MP. Estas etapas compem um ciclo de instruo. O ciclo de Instruo se repete at que encontre uma instruo de parada ou ocorra algum erro no programa. Ver figura 4.1 Figura 4.1 - Fluxo bsico de um ciclo de instruo

As atividades realizadas pela UCP podem ser divididas em duas grandes categorias funcionais:

Funo de processamento Funo de Controle 5.1FUNO DE PROCESSAMENTO Realiza as atividades diretamente relacionadas com efetiva execuo de instruo. 5.1.1Tarefas das Funes de Processamento

Operaes aritmticas (soma, subtrao, multiplicao, diviso); Operaes lgicas (AND, OR, XOR, etc); Movimentao de dados (MP/UCP, UCP/MP e entre registradores);

Desvios (Alterao da seqncia de execuo de instrues); Operaes de entrada ou sada A UAL (Unidade Lgica e Aritmtica) o principal dispositivo desta funo, sendo responsvel pela execuo de todas as operaes lgicas e aritmticas. Os demais componentes relacionados com a funo de processamento so registradores, que armazenam dados ou guardam resultados parciais a serem usados pela UAL. A interligao entre os componentes realizada pelo barramento interno da UCP. Os registradores servem como memria auxiliar da UAL e so nmeros tpicos de cada arquitetura de UCP. Em Alguns sistemas, um desses

registradores, denominado acumulador (ACC), alm de armazenar dados, serve de elemento de ligao da UAL com os Outros elementos da UCP. A figura 4.2 ilustra os componentes empregados na funo de processamento (um dos registradores acumulador). Figura 4.2 - Componentes da funo de processamento A capacidade de processamento de uma UCP, ou seja, a velocidade de execuo de um ciclo de instruo, determinada pelas operaes aritmticas que a UAL capaz de executar e pelo tamanho da Palavra que a UCP pode manipular. Em processamento simples, a UAL s pode realizar apenas uma pequena quantidade de operaes bsicas, como soma e subtrao. Operaes mais complexas, como multiplicao e diviso, so nesses processadores, implementados por software (programa), enquanto em processadores mais poderosos, o Hardware da UAL capaz de executar diretamente as operaes de soma, subtrao, multiplicao e diviso e com muito mais rapidez. O tamanho de palavra escolhido para UCP determinar o tamanho dos componentes (registradores e barramentos internos) ligados rea de processamento e, de certo modo, a velocidade e a capacidade de processamento do sistema. Se uma UCP for projetada para ter uma palavra de 16 bits, como intel 8088, 8086 e Motorola 68000, por exemplo, significar que:

O ACC, demais registradores e vias de dados tero capacidade para armazenar valores de 16 bits;

A Ual somente poder efetuar operaes aritmticas e lgicas com valores representados com 16 bits Dessa forma, para somar dois valores com 32 bits, essa operao ser realizada em duas etapas: primeiro ser acionada a 1 metade de cada valor (16 bits) e depois a parte restante. Em outros sistemas nos quais a palavra tem 32 bits, exemplo intel 80486 e Pentium teremos:

O ACC, demais registradores e vias de dados permitem o armazenamento e transferncia de valores com 32 bits (O Pentium possui barramentos de 64 bits)

A UAL capaz de efetuar operaes aritmticas e lgicas entre valores com 32 bits. Nesses sistemas, a soma de dois valores de 32 bits ser realizada em uma nica etapa e, evidentemente, gastar um tempo muito menor. 5.2FUNES DE CONTROLE a funo da UCP responsvel pelo funcionamento sincronizado de todos os componentes envolvidos na execuo de uma instruo. 5.2.1Tarefas da funo de Controle Busca e transferncia da instruo a ser executada, armazenando-a no RI (ciclo de busca ou ciclo de fetch);

Interpretao (decodificao) da instruo de modo a identificar qual a operao a ser realizada pela UAL (ciclo de instruo) e; Gerao dos sinais de controle para ativao das atividades requeridas para a execuo da instruo identificada. Esses sinais so enviados, pela UC, aos diversos componentes internos a UCP (como a UAL) externos (como a MP e os perifricos). A Unidade de Controle (UC) o principal dispositivo envolvido nesta funo. Alm de efetuar a movimentao de dados entre a UCP e MP ela controla o funcionamento da UAL e de vrios componentes do sistema, atravs dos sinais de controle. Ver figura 4.3 Figura 4.3 - Esquema bsico da UCP A emisso dos Sinais de controle ocorre em vrios instantes durante o ciclo de instruo , j que este constitudo por vrios passos , como j foi visto anteriormente . os sinais possuem , de modo geral , a mesma durao , denominadaciclo de mquina , isto , cada operao do ciclo de instruo realizado em um ou mais ciclos de mquina. Podemos ter tambm, a execuo de mais de uma operao num mesmo ciclo de mquina - UCPs que empregam o sistema de execuo pipeline (arquiteturas RISC). Estes ciclos so gerados por um dispositivo conhecido como relgio ( clock) . O relgio um gerador de pulsos eletrnicos cuja funo chamada de ciclo possui uma freqncia - quantidade de vezes que um ciclo ocorre em um segundo - que medida em Hetz (Hz) - portanto, a velocidade de

execuo de ciclos de instrues depende, no somente, da quantidade de ciclos de mquina gastas, mas tambm, na durao do ciclo e de quantas operaes (passo) so realizados em um mesmo ciclo de mquina. Atualmente, microprocessadores, como o Intel Pentium, possuem freqncia de UCP na faixa de 100 a 200 MHz, o que proporciona um ciclo de mquina bem reduzido e conseqentemente, a realizao de mais operaes num mesmo perodo de tempo. Ao iniciar o ciclo de instruo, a UC emite o sinal de controle para a busca de uma instruo na MP e, via barramento de dados e RDM (Registrador de Dados de Memria), est armazenada no RI (Registrado de Instrues). Neste instante, a UC incrementa o contedo do CI (Contador de Instrues), para que este passe a armazenar o endereo da prxima instruo . Esta fase do ciclo de instruo denomina-se ciclo de busca (fetch). O outro dispositivo envolvido na funo de controle o decodificador, que tem a finalidade de identificar por um cdigo individual. 5.3INSTRUES DE MQUINA 5.3.1Definio de Instruo de Mquina Uma instruo de mquina um grupo de bits que indica ao processador uma operao ou ao que ele deve realizar. Essas instrues de mquina sendo diretamente interpretadas e executadas pelo Hardware so dependentes das caractersticas de uma especfica UCP, pois manipulam informaes cuja quantidade e movimentao de bits especfica da UAL, ACC, RI, CI e demais componentes. Dentre as operaes normalmente implementadas pelos processadores, podemos citar algumas, como:

- Transferir um dado de uma clula para outra. - Realizar uma operao lgica entre dois valores. - Efetuar a soma entre dois operandos, guardando o resultado em um deles ou num terceiro operando. - Executar um desvio incondicional para outro endereo. - Parar a execuo de um programa - Adicionar 1 ao valor de um operando. - Substituir o operando pelo seu valor absoluto. - Testar uma condio. - Transferir um byte de dados de uma porta de E/S para a MP - Transferir um byte de dados da MP para uma porta de E/S. Um processador fabricado com a capacidade de realizar uma certa quantidade de operaes bsicas (Primitivas), cada operao corresponde a uma instruo de mquina que compem o conjunto de instrues (set introduction). Atualmente, so empregadas duas tecnologias de projeto de microprocessadores: Computadores com conjunto de instrues complexo (complex Instruction Set Computer - Cisc) e;

Computadores com conjunto de instrues reduzidas (Reduces Instruction set Computer - RISC). Os Programas fonte, isto , escritos em linguagem de Programao (Pascal, C, Clipper, etc.), utilizam comandos para representar as tarefas que desejamos que o computador execute. Esses comandos no so diretamente interpretados e executados pela UCP, tendo que ser convertidos para instrues de mquina (processo chamado de compilao ou interpretao). Por exemplo, o comando, em linguagem pascal, do tipo: X:= a * b + c - d, ser convertido , para execuo , em trs instrues de mquina (Ual s capaz de executar uma de cada vez), a saber: 1) X:= a * b, que significa multiplicar o valor armazenado no endereo de memria simbolizado por A pelo valor armazenado no endereo de memria simbolizado por b; armazenando o resultado em x; 2) X:= x + c, somar o valor de X com o valor armazenado em c; armazenar o resultado em X ( o valor de X ser destrudo); 3) X := x - d , subtrair o valor armazenado em d do valor de x; armazenando o resultado novamente em x. 5.3.2Formato de Instrues de Mquina Uma instruo de mquina , que a partir de agora chamamos apenas de instrues , construda de duas partes , grupos de bits (campos): cdigos de operao e operando A figura 4.4 mostra os formatos mais comuns de instruo de mquina.

Figura 4.4 - Formatos de Instrues de mquina 5.3.3Cdigo de Operao a parte da instruo que especifica a operao a ser realizada pela UAL, por exemplo somar dois valores, mover de uma clula para um registrador etc. O cdigo de operao um conjunto d bits que indica a operao a ser executada (o C.oP interpretado pelo decodificador). A quantidade de bits do cdigo de operao determina quantas instrues o processador capaz de executar. Nos processos Intel (do 8086/88 at o Pentium), o cdigo de operao tem tamanho igual a 8 bits , portanto , seu conjunto de instrues poder ter at 256 instrues . A decodificao a etapa inicial da efetiva execuo da operao especificada pelo C.oP, tarefa da funo de controle. 5.3.4Operando(s) a parte da instruo que , quando existe , o seu valor binrio determina a localizao do(s) dado(s) que ser(o) manipulado(s) pela operao especificada pelo C. op A localizao de um dado pode ser um endereo de memria ou um registrador da UCP onde esse est armazenado. Veja no exemplo abaixo, ilustrado pela figura 4.5 Supondo que o valor binrio 1010001 ou hexadecimal A3 identifica a operao de soma de dois valores armazenados na memria principal , nos endereos especificados por Operando 1 e Operando 2.

8 bits 16 bits 16 bits Como mencionado anteriormente, por questes prticas, usaremos os valores binrios convertidos para hexadecimal. Portanto, a instruo de mquina abaixo corresponde a anterior e significa, somar o valor armazenado no endereo 9577 com o valor armazenado n endereo E2D6 e gravar o resultado no endereo 9577. 4.5 - Exemplo de instrues de mquina com dois operandos. As instrues podem ter mais de um operando , isto , a operao a ser realizada utilizar mais de um dado , sendo assim, cada operando da instruo poder conter o endereo de memria de cada dado manipulado e tambm o endereo de onde ser armazenado o resultado da mesma . O tamanho, em bits, do C.Op determina a quantidade de instrues que a UCP capaz de implementar e o tamanho do operando determina a quantidade de clulas de memria que o computador pode enderear , j que este representa um endereo de memria . No exemplo, o Set Instruction ter 256 instrues e a MP 65.536 clulas. Atualmente a quantidade de clulas das MP tem aumentado bastante , podendo - se enderear at 4Gbytes . consequentemente, o tamanho dos operandos deveria crescer de forma igual (32 bits)-, o que acarretaria em instrues de mquina com tamanho muito grande. Na realidade, existem tcnicas de endereamento que permitem gerenciar grande quantidade de clulas de memria , utilizando as instrues de tamanho reduzido , com , isto, economizando memria.

Uma destas tcnicas de endereamento chamada de Endereamento por base mais deslocamento , emprega-se registradores especficos da Ucp como parte do endereo do dado (Base) e a MP subdividida em partes iguais , identificadas por cada um dos registradores utilizados. Existem outras tcnicas de reduzir o consumo de memria para a representao de instrues , sejam por modos de endereamentos, supresso de operando e utilizao de outro registrador especfico da UCP, o acumulador (ACC). Instruo com quantidades menores de operandos ser abordado no prximo captulo. 5.3.5Ciclo de Instruo o conjunto de tarefas realizadas pela UCP para a execuo de uma instruo. A execuo repetitiva do ciclo de instruo a funo bsica durante todo o tempo em que o computador permanece ligado. As tarefas de um ciclo de instruo so as seguintes: 1- A Unidade de Controle , busca na MP a instruo , cujo endereo est armazenado no CI(Contador de Instruo); 2- A UCP incrementa o contedo do CI, indicando o endereo da prxima instruo. 3- O decodificador interpreta o cdigo de operao da instruo (interpretao da instruo ) e gera uma sada para a Unidade de Controle (UC), indicando a operao a ser executada; 4- A UCP busca na MP 0(s) operando(s), se algum for requerido pela instruo ;

5- A Unidade Aritmtica (UAL) executa a operao sobre o(s) dado(s) que j est(o) armazenados nos registradores da rea de processamento. O ciclo de instruo na realidade constitudo por 2 ciclos - ciclos de Busca (Fetch), composto pelas duas primeiras tarefas e o ciclo de execuo , que engloba as demais tarefas. As tarefas do ciclo de instruo so definidas como microoperaes e so executadas em instantes de tempo definidos (ciclos de relgio) sob o comando da unidade de Controle(UC), podendo haver a execuo de mais de uma micooperao num mesmo instante. A figura 5.6 representa o fluxograma de um ciclo de instruo Incio Clculo do Endereamento da Instruo Ciclo de Busca Ciclo de Execuo No Buscar a prxima instruo

Incrementar o C.I Decodificao do C. Op. Clculo do endereo do operando (*) Buscar e Armazenar operando Executar a operao sim Tem operando Figura 5.6 Fluxograma de um ciclo de instruo. EXERCCIOS 1 Descreva as funes bsicas de uma UCP, indicando os seus componentes principais.

2 Quais so as funes da unidade aritmtica e lgica UAL? 3 O que e para que serve o ACC? 4 Qual o componente de um processador que determina o perodo de durao de cada uma de suas atividades e controla o sincronismo entre elas? 5 Quais so as funes da unidade de controle de um processador? 6 Qual o registrador cujo contedo determina a capacidade de memria de um computador? Justifique. 6.REPRESENTAO DE INSTRUO DE MQUINA No captulo anterior foram apresentados vrios formatos de instrues de mquina. O conjunto de instrues de uma determinada UCP constitudo de vrias instrues de formatos diferentes, isto , as operaes que so executadas pela UCP podem requerer nenhum, um ou mais operandos. Cada formato de instruo possui caractersticas prprias que proporcionam vantagens e desvantagens , dependendo da aplicao . 6.1QUANTIDADE DE OPERANDOS Como j visto , as instrues de mquina so formadas pelo cdigo de operao, que identifica a operao a ser realizada pela UCP, e pelo(s) operando(s) que tem por finalidade identificar e localizar o(s) dado(s) a ser(em) processado(s). Um dos primeiros formatos de instruo idealizados foi empregado no sistema SEAC, com data de 1949 e que possua quatro operandos.

Esse formato de instruo era completo , possua a indicao explicita da localizao de todos os operandos e tambm j indicava o endereo da prxima instruo, conforme mostra o exemplo da figura 5.1. Obs:. Em nossos exemplos, faremos sempre referncias a operao aritmticas e endereamento direto de memria.
End. Operando Operando Operando Prxima C. Op. 1 2 3 instruo

Figura 5.1 Exemplo de instruo de 4 operandos Supondo um computador com memria principal de 2.048 clulas (endereo), isto , REM de 11 bits, e instrues com cdigo de operao de 6 bits , cada instruo de mquina teria um total de 50 bits. Cada operando contm o endereo de memria (representado por 11 bits) e a instruo possu 4 operandos, teremos : 4 X 11 + 6 (C.Op.) = 50 bits. Essa mquina poderia ter, por exemplo , uma instruo de soma do tipo ADD, X,Y,Z,P (Assembler) representada pela expresso X + Y, P; onde P endereo da prxima instruo . Podemos citar vantagens a respeito desse formato de instruo , tais como : A) completeza - a instruo possui todos os operando necessrios a realizao de uma operao aritmtica, dispensando at instruo de desvio incondicional , pois este consta do campo P;

B) Menor quantidade de instruo em programa , comparada com outros formatos de instruo . Porm, a grande desvantagem desse formato de instruo a ocupao demasiada de espao de memria , principalmente pelo fato de que a grande maioria das instrues de um programa no necessita de todos os trs operandos Por exemplo , uma instruo de desvio incondicional precisaria de um nico operando e haveria, ento, um desperdcio de 33 bits , pois trs operando no seriam utilizados . O tamanho das instrues de uma UCP um fator importantssimo de seu projeto. A escolha dos formatos implica e depende de vrias caractersticas da mquina, tais como:

Capacidade total de memria; Tamanho e organizao das clulas da MP. Velocidade de acesso e Organizao da barra de dados. No projeto de uma UCP, depara-se no dilema de criar um conjunto um de instrues poderosas ou de economizar espao de memria (memria ainda o componente mais caro nos computadores). Num conjunto de instrues , digamos, completo, com instrues que atendam a vrios tipos de aplicaes , implica em cdigos de operao com grande quantidade de bits .Como desejamos instrues completas ,

tambm seria necessrio uma grande quantidade de bits. para atender o nmero elevado de operandos. Esse conjunto de instrues consumiria um grande espao de memria para armazenar as instrues.. Uma possvel soluo para o problema reside na reduo da quantidade de operadores nas instrues , mantendo-se a flexibilidade das mesmas. Por exemplo, se na instruo de 4 operandos, citada anteriormente, fosse retirado um operando, mantendo-se o seu tamanho (50 bits), poderamos redistribuir os bits da segunda forma: O cdigo de operao passaria a ter 8 bits, com isto , o conjunto de instrues poderia conter at 256 instrues . Antes eram apenas 64 (C. Op. = 6 bits); Os 3 operandos teriam 14 bits e seria possvel endereo at 16.384 clulas de memria, em vez das 2.048 anteriores. O operando retirado dessa instruo era o que indicava o endereo da prxima instruo. A indicao desse endereo passou a ser realizado pelo CI (Contador de Instruo), que incrementado pela UCP. 6.2Instruo com Trs Operandos Nesse formato , em geral , os operandos 1 e 2 representam os endereos dos dados a serem utilizados em uma operao e o terceiro operando ser armazenado o resultado da operao. Ver figura 5.2. Tipos de instruo aritmticas utilizando instrues de 3 operandos:

Assembly Expresso ADD A,B,X (A) + (B)(X) (A) - (B)SUB A,B,X (X) MPY A,B,X (A) * (B)(X) (A) / (B)DIV A,B,X (X) Na instruo da soma (ADD A,B,X), significa: Somar o contedo do endereo simblico de memria , representado por A ao contedo do endereo B e armazenar o resultado no endereo representado por X. O mesmo se aplica as demais operaes aritmticas referidas. Por exemplo, consideremos a execuo de um programa para resolver a expresso algbrica X = A ( B + C * D - E / F). Convertida para linguagem Assembly, o programa equivalente ao seguinte: MPY C,D,T1 T1 E T2 SO VRIAVEIS TEMPORRIAS DE MEMRIA DIV E,F,T2 ADD B,T1,X SUB X,T2,X MPY A,X,X Podemos observar que na seqncia de instrues h operandos com endereos iguais, o que acarreta desperdcio de espao em memria. O

nmero de instrues igual ao de operandos, visto que cada instruo de 3 operandos resolve uma operao por completo. Mesmo com a reduo de um operando, o consumo de memria continua demasiado na utilizao efetiva dos operandos. Vrias instrues exigem o emprego de apenas dois operandos, sendo o terceiro repetido. 6.2.1Instrues com dois Operandos A operao executada com os contedos dos endereos indicados pelos operandos 1 e 2 e o resultado armazenado no operando 1. (ou operando 2). Ver figura 5.3 6.2.1.1.1.1.1.1.1Operando 6.2.1.1.1.1.1.1.2Operando 1 2

C. Op.

Figura 5.3 Formato de instruo com 2 operandos Como esse formato de instruo reduz-se o consumo de memria, pois emprega-se apenas dois operandos. Assim, teremos as operaes aritmticas representadas da seguinte forma: Assembly Expresso ADD A,B (A) (A) + (B) SUB A,B (A) (A) - (B) MPY A,B (A) (A) * (B) DIV A,B (A) (A) / (B)

O contedo do endereo indicado pelo operando 1 ser substitudo pelo resultado da operao. Quando necessrio, pode-se SALVAR o contedo do operando 1 em uma varivel auxiliar, atravs de uma nova instruo (MOVE), que executada antes da operao. O exemplo do item anterior, agora com 2 operandos, ficaria deste modo: MPY C,D DIV E,F ADD B,C SUB B,E MPY X,A MOVE X,A Observe que na sequncia existe uma instruo a mais (MOVE), que salva o contedo de A em X, e que os contedos de B, C e D foram destrudos. Uma varivel auxiliar pode ser usada mais de uma vez no mesmo programa e , se quisermos salvar todos os valores , poderamos alterar o programa para o seguinte: MOVE X,C MPY X,D MOVE Xt1,,F

ADD X,T1 SUB X,B MPY X,A 6.2.2Instrues com Um Operando Com base nas vantagens da reduo da quantidade de operandos, foram criados instrues com apenas um operando. Uma instruo menor que , consequentemente , consome menos memria e tambm tempo de acesso. Nesse formato de instruo , um dos operandos foi substitudos pelo acumulador (ACC). Como s h um ACC, no necessrio especificar seu endereo na instruo . O ACC guarda o valor de um dos dados da operao e , posteriormente, o valor o resultado. As operaes aritmticas so representadas da seguinte forma: Assembly Expresso ADD Op ACC ACC + (Op) SUB Op ACC ACC - (Op) MPY Op ACC ACC * (Op) DIV Op ACC ACC / (Op) Para complementar o execuo desse tipo de instruo , foram criados , duas novas instrues que permitem a transferncia de dados entre o ACC e a MP, que so:

Assembly Expresso Carrega o ACC com contedo do endereo indicado pelo operando LDA Op (Op)ACC Armazena o contedo do ACC no endereo indicado pelo operando. STR Op (Op) ACC Usando como exemplo o mesmo programa dos itens anteriores, teremos como instrues de um operando e mantendo os valores das variveis, a seqncia em Assembly. LDA C MPY D STA X (Salva o resultado) LDA E STA Y (Salva o resultado) LDA A ADD X SUB Y MPY A

EXERCCIOS 1 Cite uma possvel vantagem do emprego de instrues com menor quantidade de operandos. 2 Crie um conjunto de instrues de dois operandos, definidas em linguagem Assembly, necessrias para a realizao de operaes aritmticas e elabore programas para clculo das seguintes equaes: 1. 2. X = A + (B * (C A) + (D E / B) * D) Y = (A + B) * (C D * (E / (B F)) + B) * E) 3 Considere as instrues definidas a seguir (de um operando) LDA Op ACC (Op) STA Op (Op) ACC ADD Op ACC ACC + (Op) SUB Op ACC ACC (Op) MPY Op ACC ACC * (Op) DIV Op ACC ACC / (Op) LDA Op ACC (Op) Obtenha a equao que resultou no seguinte programa: LDA A ADD C STA X

LDA B MPY D SUB E STA Y LDA X ADD Y DIV F STA X 7.EXECUO DE PROGRAMAS Neste ponto , j sabemos o que um programa e uma linguagem de programao (vide Captulo 1). Sabemos, tambm , que os programas escritos em linguagem de programao devem ser convertidos para instruo de mquina, de modo que o computador possa entender e executar as tarefas desejadas. Ainda no Capitulo 1, vimos que a linguagem de mquina forma de se representar os estados ligados e desligado da corrente eltrica. Devemos lembrar que a manipulao da corrente eltrica o princpio de funcionamento dos circuitos eletrnicos de que so compostos os computadores.. Portanto, toda e qualquer tarefa a ser executada por um computador deve estar escrita em linguagem de mquina. Outro fato que se faz necessrio lembrar, que a representao dos estados de corrente eltrica feita atravs de um cdigo binrio que

possui dois smbolos , 0 e 1 e, que todos os caracteres da linguagem humana so representados pelas combinaes dos smbolos binrios (item 3.2) Neste capitulo veremos uma descrio bsica sobre as linguagens de programao e os processos de converso dos programas escritos nessa linguagem para linguagem de mquina 7.1LINGUAGEM DE PROGRAMAO Uma linguagem de Programao uma linguagem criada para instruir o computador a realizar tarefas. Um programa escrito em uma linguagem de programao denominado cdigo. Desse modo, codificar um algoritmo significa converter suas declaraes em comando ou instrues especficas de uma determinada linguagem de programao. A primeira linguagem de programao implementada exatamente a que descreve diretamente as instrues a serem executadas pela UCP, isto , a Linguagem de mquina . Como j temos conhecimento de instrues de mquina , seus formatos e representaes, podemos imaginar a dificuldade de escrever um programa utilizando o cdigo de mquina para representar as operaes e os endereos dos dados a sero manipulados . Alm da dificuldade da escrita, deve-se ter conhecimento de todo o conjunto de instrues da UCP que estiver utilizando , bem como os endereos reais de memria e dos registradores. Para exemplificar a dificuldade de entendimento da linguagem de mquina A figura 6.1 representa um exemplo de programa, simblico, nesta linguagem . Neste exemplo, tanto o cdigo de operao quanto os

operandos possuem 4 bits. Cada linha corresponde diretamente a uma instruo de mquina. 1001 0101 1001 0011 0100 0100 1001 1110 1110 0001 1000 1111 1111 0011 0111 1100 0001 0010 1111 1101 0011 0110 0001 0101 0000 0000 0000 0000 Figura 6.1 - Exemplo de programa em linguagem de mquina. Devido as complexidade e dificuldades da linguagem de mquina , foi desenvolvida uma linguagem simblica, denominadaLinguagem de Montagem (Assembly Language), ou simplesmente linguagem Assembly. A linguagem Assembly representa as instrues de mquina atravs de mneumnicos dos nomes das operaes (em ingls) e os dados e endereos por smbolos (caractres alfabticos e alfanumricos ), com a finalidade de tornar mais amigvel a comunicao entre o homem e a mquina.

A linguagem Assembly considerada como Linguagem de Baixo nvel, devido a sua proximidade com a linguagem de mquina , porm alguns autores a definem como linguagem de mquina. A figura 6.2 apresenta um programa escrito em linguagem Assembly. Incio: ORG ZERO ; Origem do programa. Endereo 0. LDA CONTADOR ; Carregar valor do contador no ACC. JZ FIM ; Se contador = 0, ento PARAR (desvia para FIM). LDA Parcela 1 ; Ler valor de parcela 1 para ACC. ADD Parcela 2 ; Realizar operao de soma com dados. STR Resultado ; Transferir o contedo do ACC para Resultado. LDA Contador ; Ler valor do contador para ACC. DCR Zero ; Decrementar 1 do contador. JMP Incio ; Volta para o incio do loop. Fim: HLT ; Parar. DAD Parcela 1 ; Exibir contedo de parcela 1. DAD Parcela 2 ; Exibir contedo de parcela 2. DAD Resultado ; Exibir contedo de resultado.

DAD Contador ; Exibir contedo de contador. Mesmo com a criao de linguagens montadoras, o entendimento e rapidez de trabalho para os programas ainda era difcil. Na dcada de 50 comearam a ser desenvolvidas linguagens mais simples e com menos instrues do que as de montagem, chamada linguagens procedurais, cujos comandos e estruturas so voltados para a soluo do problema e no para as operaes especficas de uma determinada UCP ou memria na qual o programa ser executado. A essas linguagens procedurais, chamamos de linguagens de linguagens de Alto Nvel, pois sua forma de descrever as aes est mais prxima da linguagem humana. Elas so , em geral , estruturadas a nvel de software e por isso , na maioria dos casos , independem da mquina onde os programas sero executados. Geral, o programa escrito em uma linguagem de alto nvel denominado cdigo fonte, ou programa fonte ou simplesmentefonte Alm da facilidade de aprendizado, as linguagens de alto nvel permitem que se elabore uma documentao sobre os programas de fcil compreenso e conseqentemente , uma melhor manuteno dos mesmos. As Linguagens de alto nvel , geralmente , so categorizados de acordo com a aplicao a que se destinam , podendo ser comerciais, cientficas e de emprego geral. A tabela a seguir mostrar alguns exemplos de linguagens de programao de alto nvel.

LINGUAGEM

DAT A

DESCRIO / APLICAO

FORTRAN

1957

FORmula TRANslation - Utilizada em clculos numricos

ALGOL

1958 ALGOrithm Language - Linguagem de Emprego Real Common Business Oriented Language - Linguagem Comercial Beginner All pupose Symbolic Instruction Code Emprego Geral

COBOL

1959

BASIC

1960

PL/1

1964 Linguagem de Emprego geral Linguagem de Emprego Geral - Homenagem a Blaise Pascal

PASCAL

196X

196X Linguagem de Emprego Geral Inicialmente de uso exclusivo do Pentgono Americano

ADA

1980

CLIPPER

1985 Linguagem de Emprego geral

Tabela 6.1 - Exemplos de Linguagens de Programao de Alto nvel 7.2PROCESSOS DE CONVERSO DE PROGRAMAS Qualquer cdigo fonte (programa escrito em linguagem de programao ) precisa ser convertido para a linguagem de mquina (cdigo binrio). A

converso feita atravs de um programa especfico para cada linguagem de programao , chamadoprograma tradutor 7.2.1Montagem o processo de traduo de um programa em linguagem Assembly para o seu equivalente em linguagem de mquina . Conforme mostra a figura 6.3. Durante a montagem , o programa fonte escrito em Assembly analisado instruo por instruo , por um programa chamado assembly (montador). O Programa montador especfico para cada UCP utilizada. Em seguida gerado um programa em cdigo de mquina, denominado cdigo objeto, diretamente executvel pela UCP. Figura 6.3 - Fluxograma de Montagem O processo de montagem simples e direto , pois cada instruo em Assembly convertida para uma nica instruo de mquina, ou seja, a traduo do tipo um para um, conforme mostra a figura 6.4 Instrues Assembly Instruo de Mquina ADD X 1011011101101010 MPY Z 0101011011011101 STR B 1010100110000111 HLT 1111010000000000

Figura 6.4 - Converso de cdigo Assembly em cdigos de Mquina O Programa Montador executa, basicamente, as seguintes funes: Examinar a escrita de cada instruo . Substituir cdigos de operao e nomes simblicos por cdigos binrios Reservar espao em memria para armazenar instrues e dados. Converter valores de constantes para cdigos binrio. 7.2.2Compilao Processo de converso de programas escritos em linguagem de alto nvel para o cdigo binrio . Esta tarefa realizada por um programa chamado compilador, que especfico para a linguagem de alto nvel na qual o programa fonte foi escrito . em microcomputadores , no h a necessidade do compilador ser especfico para UCP utilizada. Na compilao , a traduo do tipo um para vrios , isto , um nico comando de linguagem de alto nvel convertido para vrias instrues de mquina, na maioria dos casos. O compilador analisa o cdigo fonte , comando por comando e realiza vrias tarefas , dependendo do comando analisando e , ao , final, gera um programa, em linguagem de mquina denominado cdigo objeto ou mdulo objeto; porm, ainda no executvel, diferentemente da montagem. Este processo ilustrado na figura 6.5

Figura 6.5 - Fluxograma de Processo de Compilao A primeira fase da compilao , que analise do cdigo fonte, divide-se em trs partes distintas: Analise Lxica Decomposio do fonte em comandos, operadores, variveis etc., cada um dos elementos analisado de acordo com as regras de escrita da linguagem empregada, por exemplo , em Pascal o operador de igualdade := e no apenas =. O compilador gera mensagens de erro, ao encontr-los, em qualquer das trs etapas. Anlise Sinttica Criao das estruturas apropriadas parra cada comando obtido da anlise lxica e a correo das estruturas , com base nas regras da linguagem. As estruturas formam a base da criao do cdigo objeto. Anlise Semntica Verificao da integridade e compatibilidade de um tipo de dado usado em uma expresso, isto , o tipo de dado tem que ser coerente com o que foi declarado no programa. A segunda fase completa o processo alocando espao de memria para as variveis definindo que registradores sero empregados e que dados neles sero armazenados e, gerando o cdigo objeto . Este cdigo , no executvel . Falta ainda ligar a este, rotinas externas especficas referenciadas no programa fonte. 7.2.3Linkedio ou Ligao Quando se escreve um programa, no necessrio codificar determinadas operaes , como as de entrada e sada , pois de mquina destas j faz parte do Sistema Operacional. Essas operaes so chamadas de rotinas internas, pois so utilizados por qualquer programa,

portanto, incorporado ao cdigo objeto automaticamente durante a compilao. No entanto , existem rotinas especficas que pertencem ao programa compilador, e que no so utilizados por todos os programas (rotinas externas). Por exemplo, rotinas matemticas especiais para clculo trigonomtrico, rotinas grficas etc. As rotinas externas so arquivos , em linguagem de mquina, organizados em diretrios por grupos de rotinas. Cada grupo de rotina denomina-se biblioteca (library). Durante a gerao do cdigo objeto, se o compilador encontra um comando que requer o uso de rotina externa, ele insere uma chamada de biblioteca (library call) no cdigo objeto. Esta chamada tambm conhecida como referncia externa no resolva e contm o nome da rotina e o endereo do dado a ser passado para rotina. Para que programa se torne executvel, a rotina referenciando no cdigo fonte, deve ser incorporada ao mdulo objeto (a linha que contm a chamada de biblioteca substituda pelo cdigo objeto da rotina). Este processo , que inclui a interpretao da chamada de biblioteca e a ligao do mdulo objeto com a rotina referenciada, denomina-se linkedio ou ligao e executado pelo programa linkeditor ou programa ligador. O resultado da linkedio um conjunto de cdigos de mquina, interligados e prontos para execuo , denominado cdigo executvel ou mdulo de carga. O fluxograma da figura 6.6 ilustra as etapas de compilao e linkedio de um programa fonte.

Figura 6.6 - Fluxograma do processo de compilao e linkedio. Os processos de compilao e linkedio so distintos e independentes, gerando produtos diferentes, cdigo objeto e executvel, respectivamente. No entanto , podem ser realizados em seqncia e imediatamente, como se fosse um processo nico.. Gerado o cdigo executvel, no mais necessrio ter o compilador, o fonte e nem tampouco o cdigo objeto armazenado no computador, pois o executvel diretamente estendido pela mquina. Basta o Sistema Operacional estar ativo. 7.2.4Interpretao Um outro processo de converso de programa, a partir de um programa fonte , a interpretao. Nas linguagens compiladas, a converso realizada duas etapas (compilao e linkedio), gerando programas diferentes (mdulo objeto e mdulo de carga). O programa interpretador realiza diretamente as tarefas de compilao e linkedio de cada comando , individualmente, sem distino das etapas. Neste processo, o programa fonte no convertido para nenhum produto intermedirio, como na compilao. Cada comando convertido para cdigo de mquina e passado imediatamente para a execuo. Desta forma, aps a interpretao do ultimo comando, o programa estar completamente executado. Quando o interpretador encontra um erro no programa fonte, suspende a execuo do programa e emite uma mensagem de erro . Aps a

correo, o programa tem que ser interpretado a partir do seu incio. Ver figura 6.7. Figura 6.7 - Fluxograma do Processo de Interpretao. Como no processo de interpretao no gerado cdigo executvel , necessrio manter armazenado o cdigo fonte e o programa interpretador. EXERCCIOS 1 - Explique o que voc entende por compilao. 2 - E por interpretao? 3 - Compare os dois modos: compilao e interpretao. Indique em que circunstncias um modo mais vantajoso que o outro. 4 - Por que um programa em linguagem Assembly no diretamente executvel pelo processador? Como este problema , na prtica, resolvido? 5 - Por que um compilador deve ser especfico para uma determinada linguagem de programao e para uma determinada UCP? 6 - Explique o que e como funciona o processo de ligao (linkedio). 7 Quais so as principais etapas de anlise de um programa fonte realizadas por um programa compilador? 8.ENTRADA E SADA

Nos captulos anteriores foram descritos a organizao , a interligao e o funcionamento bsico do conjunto UCP/MP, onde, realmente ocorre o processamento, assim como a converso dos programas e dados para forma entendida pela mquina. Na descrio do funcionamento do conjunto MP.UCP, assumimos que as informaes j estavam convertidas para linguagem de mquina armazenada na memria principal. No entanto, preciso que os dados sejam inseridos na MP e que os resultados sejam exibidos, de forma inteligvel para o usurio ou armazenados, sob outra forma, para posterior utilizao. Para desempenhar estas funes , que constituem a comunicao entre o Homem e a mquina , so empregados vrios dispositivos (de entrada e sada), denominados perifricos. Ao conjunto de perifricos chamaremos de Subsistema de Entrada e Sada (E/S) e teremos assim um sistema de computao completo , formado por dois subsistemas interligados por 3 barramentos externos ( de dados ,endereo e de controle). Consideramos barramento interno ou barramento do sistema, o que interliga a UCP e a MP. A figura 7.1 ilustra a interligao dos subsistemas UCP/MP e o de E/S. UCP MP Endereo Controle

dados SUBSISTEMA DE E/S Figura 7.1 Interligao dos subsistemas de UCP/MP e de E/S. O Subsistema de E/S realiza duas funes necessrias ao processamento: Receber ou enviar informaes de/para o meio exterior e; Converter as informaes para linguagem de mquina (na entrada) e para a linguagem Humana(na sada). 8.1INTERFACES DE E/S Devido a grande diversidade de perifricos e as suas diferentes caractersticas no que diz respeito ao formato dos dados e a velocidade de transmisso em relao a UCP/MP, a comunicao no realizada de forma direta e individual. Por exemplo comparando a velocidade de execuo de um ciclo de leitura com a digitao de um texto pelo usurio , notamos que a UCP fica ociosa durante muito tempo a espera dos dados para armazena-los na MP (entrada de dados via teclado feita bit a bit). Mesmo os dispositivos de E/S mais rpidos possuem velocidades de transferncia de dados muito baixas, quando comparados com UCP/MP. A interligao dos Perifricos com a UCP/MP exige a utilizao de um dispositivo intermedirio denominado interface de E/S, que realiza a traduo e a compatibilizao das caractersticas entre um perifrico e o conjunto UCP/MP. Vide figura 7.2.

Figura 7.2 - Configurao de um sistema de computao completo. A interface de E/S tambm identificada por outros nomes, ditados , por fabricantes ou mercado. Por exemplo, a IBM adota o nome de canal (channel), a CDC chama de PPU (Peripheral Processor Unit) e , em microcomputadores geralmente, so conhecidas como adaptadores ou controladores de E/S. Uma interface pode ser utilizada pode atender a uma unidade de disco rgido , uma de disquete e uma de disco tico. h tambm, controladores que permitem a conexo de at oito dispositivos, e o caso da interface SCSI(Small Computer System Interface). A Figura 7.3 mostra a conexo da vrios perifricos a uma interface. Figura 7.3 - Configurao com vrios perifricos em uma interface. A interface ou controlador de E/S responsvel pelas seguintes tarefas: Controle e sincronismo do fluxo de dados entre a UCP/MP e o perifrico; Comunicao com a UCP interpretando os sinais de controle para o acesso fsico ao perifrico. Servir de memria auxiliar (buffer) de dados durante a transferencia de informaes entre os componentes e; Deteco de erros nas transmisses de dados . De uma forma geral podemos descrever a comunicao entre a interface e o perifrico atravs das aes bsicas a seguir:

1) A interface envia um sinal de controle ao perifrico , interrogando-o sobre a sua disponibilidade de enviar dados (entrada) ou de receber (sada); 2) O perifrico responde atravs de um sinal de controle; 3)A interface transmite os dados de acordo com a unidade de transferencia do perifrico. 4) O perifrico certifica o recebimento dos dados (Sada) ou trmino do envio (entrada). Geralmente , as interfaces utilizam um buffer interno, por ser este tipo de memria auxiliar o principal componente na compatibilizao de velocidades de transmisso de informaes entre os barramentos internos e externos. A transmisso dos dados entre o perifrico e a interface pode ser realizada bit a bit - transmisso serial - ou por grupos de bits de cada vez - transmisso paralela. Quando empregada a transmisso serial, a conexo do perifrico interface feita por uma nica linha e os bits que formam os dados so transmitidos um a cada vez, conforme mostra a figura 7.4. Figura 7.4 Exemplo de transmisso Serial. Sendo a transmisso serial, visto que transfere um bit de cada vez, ela empregada na conexo de perifricos de baixa velocidade, como por

exemplo, teclado , mouse ou modem (dispositivo que permite a transmisso de dados atravs de linhas telefnicas). Na transmisso paralela, a transferncia de dados , realizada em grupos de bits de cada vez, sendo que cada bit utiliza uma linha separada, por tanto, mais rpida que a serial. Este tipo de transmisso empregada na conexo de perifricos de maior velocidade, tais como, unidades de discos, impressoras e monitores de vdeo. ver figura 7.5 Figura 7.5 Exemplo de transmisso paralela 8.2DISPOSITIVOS DE E/S So dispositivos que permitem a comunicao entre o usurio e a mquina, cada um com sua funo especfica (entrada/ou sada). Poderamos citar uma lista imensa de perifricos de E/S, no entanto, vamos nos limitar aos comuns utilizados em ambientes de microcomputadores, tais como: teclado , monitor de vdeo, impressoras, mouse e etc. 8.2.1TECLADO um dos perifricos de entrada mais comuns dos computadores . Ele permite reconhecimento dos smbolos de nossa linguagem atravs da interpretao do significado eltrico de cada tecla pressionada . Cada tecla gera um cdigo binrio que ser convertido para padro ASCII e , em seguida interpretado pela rotina de controle de teclado . Nos microcomputadores com Sistema Operacional Dos, esta rotina pertence ao BIOS(Basic Input Output System).

O BIOS verifica o cdigo gerado pela tecla pressiona e tambm a situao das teclas <SHIFT>,<ALT>, e <CTRL?, isto , se elas tambm foram, pressionadas. 7.3.2 MONITOR DE VDEO Representa de forma visual os smbolos utilizados pelo usurio na comunicao com o computador. Tambm um dos perifricos mais comuns. O monitor de vdeo convencional possu uma tela semelhante a de um televisor , na qual so exibidas as imagens geradas pelo computador. Atualmente, encontramos vrias tecnologias de fabricao de monitores de vdeo, nas quais variam a criao e representao da imagem e tambm a forma de transferncia dos dados do sistema para vdeo. Podemos citar algumas delas, tais como : VCR- Vlvula de Raios Catdicos (CRT Cathode Ray Tube); DEL - Diodo emissor de Luz (LED Light Emitting Diode); VCL - Vdeo de Cristal Lquido (LCD Liquid Crystal Display); VPE - Vdeo de painel Estreito (FDP Flat Panel Display). Porm o mais empregado sendo o VCR que emprega a tecnologia de criao de imagens por varredura de linhas , o mesmo processo utilizado nos aparelhos de TV domsticos. Ver Figura 7.2.

Figura 7.2 Ilustrao de uma vlvula de raios catditos VCR. Descreveremos, de forma simples, o funcionamento bsico de um monitor de vdeo do tipo VRC. a) O canho gera um feixe de eltrons em direo a tela do vdeo que recoberta por uma camada de fsforo, criando um ponto iluminado na tela , chamado de pixel. b)No trajeto para a tela , o feixe de eltrons sofre deflexes horizontais e verticais . A deflexo horizontal permite que o feixe se desloque, neste sentido , traando uma linha de pontos na tela. c) Quando o feixe atinge a extremidade direita da tela , este ; desligado e retorna para o incio da linha seguinte Este processo repetido at atingir a extremidade inferior direita da tela , quando o feixe desligado e retorna a extremidade superior esquerda , reiniciando-se. d)O resultado deste processo gera na tela uma matriz de pontos luminosos , onde cada ponto contm 1 bit de informao . e) A tela no mantm continuamente dois pontos luminosos, portanto, necessrio que haja uma repetio de imagens gerada reescrita, o que ocorre vrias vezes por segundo . Para que a mesma imagem seja reescrita, a configurao desta armazenada em memria. Nos monitores coloridos , um pixel formado por trs pontos, cada um gerado por um feixe de eltrons distinto (trs canhes), correspondendo a cada cor fundamental (vermelho, azul e verde). Variando-se a intensidade de cada cor(feixe) possvel produzir qualquer cor desejada.

A resoluo (qualidade de imagens)de um monitor de vdeo est baseada na quantidade de pixels que pode ser representada em uma tela, nas freqncias das varreduras e em outras caractersticas eletrnicas, que determinam um padro de vdeo . Os padres de vdeo mais utilizados atualmente so: VGA - Vdeo Graphics Array - Possui vrios padres de medidas , sendo mais utilizado o de 640x480 pixel, 16 cores e freqncia vertical de 70 Hz e Horizontal de 31,5 Khz SVGA - Super Vdeo Graphics Array - Compreende as medida de 800x600, 1024x768 e 1280x1024 pixel, 16 e 256 cores, freqncia vertical entre 56 e 72 Hz e Horizontal entre 3`,5 e 48 Khz. Uma caracterstica importante a ser considerada na composio de monitores de vdeo a distncia entre 2 pixels adjacentes nos monocromticos e entre dois pontos de uma trade do pixel colorido. Esta distncia chamada de dot pitche quanto menor ele for, melhor a definio da imagem (mm), sendo considerados como de boa resoluo os de valores entre 0,40 e 0,24 mm 8.2.2Impressoras o dispositivo clssico de sada , pelo qual as informaes armazenadas no computador so convertidas em smbolos inteligveis pelo usurio. Neste item citaremos apenas os tipos mais comuns de impressoras. Geralmente, caracteriza-se as impressoras por sua velocidade de impresso - caracteres- por segundo (CPS), linhas por minuto (LPM) ou pginas por minuto(PPM) - e pela tecnologia utilizada na gerao dos caracteres a serem impressos. 8.2.3Impressoras Matriciais

Das impressoras de impacto , est a mais comum e popular em ambientes de microcomputadores. Seu mecanismo de impresso consiste de um conjunto de agulhas (pinos) que se projeta contra uma fita tintada, imprimindo o caracter no papel por trs da fita. O conjunto de agulhas chamado de cabea de impresso mostrado em tubo e cada agulha ligada a uma bobina eletromagntica. A quantidade de agulhas pode variar entre 9 e 24,. Quanto maior o nmero de agulhas, melhor a resoluo da impresso Quanto um conjunto de bits, corresponde a um caracter, recebido pelo circuito de controle da impressora , so geradas correntes eltricas que acionam a bobina, que por sua vez, projeta as agulhas requeridas para gerar os pontos que iro formar o caracter . Em seguida , uma mola retrai as agulhas para a posio inicial. 8.2.4Impressoras de Jato de Tinta As impressoras de jato de tinta , reproduzem caracteres tambm em forma de matriz de pontos , com a diferena da tcnica utilizada para criar os pontos no papel. Neste tipo de impressora , cada ponto resultante de uma gota de tinta depositada do papel e seca a calor. O mecanismo de impresso (cartucho) constitudo de vrios bicos que permitem a sada das gotas de tinta, a quantidade de bicos variam entre 64 e 256, o que define a sua resoluo. A tecnologia mais comum nas impressoras de jato de tinta a projeo gota a gota por demanda, que consiste de uma resistncia eltrica que , quando aquecida , vaporiza a tinta gerando uma bolha que sai pelo bico e depositada no papel . Este processo ocorre milhares de vezes por segundo durante a impresso.

As impressoras mono cromticas utilizam um cartucho de tinta preta e as que imprimem em cores, possuem um cartucho com 3 tubos de tinta (azul, magenta e amarela) ou dois cartuchos , sendo um com trs cores de tinta e um de tinta preta. Podem ser matriciais, as impressoras de jato de tinta tem sua resoluo medida em pontos por polegada (dpi), por exemplo , 300x300 dpi ou 600x600 dpi 8.2.5Impressora a Lazer O mecanismo de impresso das impressoras a lazer semelhante ao das copiadoras de imagens em papel . Consiste em formar a imagem da pgina a ser impressa num cilindro fotossensvel, atravs de sua exposio luz (feixe de laser). A imagem formada no cilindro como se fosse uma sombra da imagem gerada pelo computador e transmitida para o buffer da impressora. O cilindro vai girando e criando os pontos que formam os caracteres, linha por linha. Quando o cilindro exposto luz, sua carga eltrica alterada, atraindo as partculas de toner para as partes que formam a sombra da imagem nela projetada. Em seguida, o papel que est passando pela imagem para este. O toner no papel secado atravs de dispositivo aquecedores da prpria impressora. Sua resoluo tambm medida por dpi e normalmente alta , entre 600 e 1200 dpi. 8.2.6Discos Magnticos As unidades de discos magnticos alm de serem dispositivos de E?S, so tambm memrias secundrias, pois dispem de meio de armazenamento.

8.2.7Unidade de disco Rgido A unidade de disco magntico rgido (HD) ou Winchester caracterizada por possuir o meio de armazenamento acoplado a prpria unidade acionadora. Geralmente , possui vrios discos, sendo que cada disco composto por duas superfcies ou faces metlicas cobertas com material magnetizvel. Cada face formada por trilhas concntricas numeradas a partir da extremidade (trilha 0) e cada trilha dividida em setores , numerados no sentido de rotao do disco . Todos os setores possuem a mesma capacidade de armazenamento , 512 Bytes ou 1 Bloco, isto possvel devido a densidade das trilhas mais internas ser maior do que a das mais externas. O bloco a unidade de transferencia de dados durante a leitura e o byte a de gravao. Sobre as superfcies , um brao mecnico movimenta a cabea de leitura e gravao, no sentido transversal das trilhas, de modo a localizar os endereos fsicos, onde sero gravados ou lidos os dados A figura 7.4 ilustra uma unidade de discos com vrias superfcies em um mesmo eixo e um nico acionador dos braos. Figura 7.4 Esquema de vrios discos com todos os braos ligados a um nico acionador. Como todos os braos esto ligados a um mesmo acionador, as cabeas efetua, o mesmo movimento sempre juntas. Por tanto, quando o acionador se desloca para acessar um determinado endereo no disco, por exemplo, o endereo trilha 17 da superfcie 03, todas as cabeas sero posicionadas na trilha 17 de sua respectiva superfcie. O conjunto

de trilhas de mesmo nmero, acessada em um nico movimento do acionador, denomina-se cilindro. O acesso por cilindro empregado em sistemas de discos de grande porte, nos quais se manipulam grandes quantidades de acesso . Os primeiros discos rgidos para microcomputadores possuam capacidade de armazenamento entre 5 e 10 Mbytes e atualmente, chegamos a capacidades elevadas, acima dos 1.8 Gbytes. 8.2.8Unidade de disco Flexvel As unidades de discos flexveis ou disquetes, so caracterizadas por ter seu meio de armazenamento(disquete) removvel, permitindo o transporte das informaes. A forma ed armazenamento e recuperao dos dados igual a dos discos rgidos. Os dois dispositivos diferenciam-se basicamente na capacidade de armazenamento e recuperao dos discos, na velocidade de acesso as informaes que nos discos rgidos so muito maiores e no material empregado na fabricao dos disquetes, que so de plstico. Os primeiros disquetes possuam apenas uma superfcie magnetizvel (face simples) e dimetro de 8(8 polegadas), com capacidade variando entre 256 e 1Mb (face dupla),em seguida surgiram os disquetes com dimetro de 5 com capacidade de 180 Kb (face simples), 360Kb(face dupla) e at 1.2Mb Atualmente todos os disquetes so de dupla face, com um novo dimetro, 3,3 e com capacidade de armazenamento entre 720 Mb e 2.88 Mb 8.2.9MOUSE

O mouse um dispositivo considerado como um apontador e acionador, aplicado basicamente como elemento de interligao entre o usurio e o sistema. O mouse permite acionar, atravs de seus botes de cones em um ambiente grfico. Este perifrico veio facilitar bastante o trabalho dos usurios , pois os livra de ter que digitar extensa linhas de comandos para executar , as vezes, uma ao simples. O funcionamento bsico ddo mouse, consiste no rolamento de uma esfera sobre uma superfcie, de uma mesa por exemplo. A esfera gira, acompanhando o movimento feito pela mo do usurio, transmitindo estes movimentos a dois rodetes que tocam as escovas de contato que completam o mecanismo de movimentao. O acionamento de um cone apontado, ocorre pelo envio de bit ao sistema quando pressionado um de seus botes. 8.2.10Scanner Os Scanner (varredores ou capturadores) so dispositivos ticos de entrada que convertem uma imagem de uma superfcie, geralmente plana, em pontos em formato binrio e os armazena na memria. O mecanismo de varredura formado por um gerador de feixe de luz (fixo ou mvel), lentes espelhos e um conjunto de milhares de clulas fotossensveis, gera os pontos correspondentes ma uma imagem capturada. O feixe luminoso ao percorrer o papel que contm a imagem, refletido pelos espelhos atingindo o CD que gera um sinal eltrico, proporcional a intensidade da luz refletida em cada clula, produzindo os pixels da imagem. cada um dos sinais convertidos para o cdigo binrio e armazenado na memria.

Nos scanners coloridos, o feixe de luz utiliza trs filtros (verde, vermelho e azul) e cada filtro registra o componente da luz de sua cor correspondente. Cada ponto gerado formado por 24 bits (8 para cada cor), por conseguinte, combinando-se as variaes de cada cor, um scanner pode-se reconhecer at 16,8 milhes de cores diferentes, por outro lado, os arquivos que armazenaro as imagens tero tamanhos muito grandes. A resoluo dos scanners tambm medida em dpi, baseada na quantidade de clulas do CCD e na rea total a ser scaneada. 8.2.11Discos ticos Os discos ticos ou CD-ROM, armazenam os dados por variaes de reflexo de luz . O CD-ROM utiliza apenas uma superfcie que composta por material altamente reflexivo. A organizao dos dados feita tambm por setores, porm, em uma nica trilha espiral e a partir do centro do disco (semelhante a um disco fonogrfico). A capacidade de armazenamento alta (680MB), mas sua velocidade de armazenamento de acesso baixa (250 a 400 mseg) Quando comparada a dos discos magnticos. Nos discos ticos a densidade fixa em todos os setores, no existindo sobra de espao nos setores das trilhas mais externas, como ocorre nos discos magnticos, proporcionando maior taxa de ocupao do disco. No entanto, a velocidade de rotao varivel, inversamente proporcional ao raio do setor, tornando lento o acesso aos dados. Uma outra caracterstica a ser observada no CD-ROM a resistncia deteriorao por poeira ou mesmo por impacto da cabea de leitura sobre a superfcie do disco. A distncia entre a cabea e o disco muito grande (cerca de 1mm), enquanto nos discos magnticos de apenas 0,5 micrmetro.

Os discos ticos obedecem a padres e protocolos de acesso s informaes definidas pelo conselho de multimdia para PC, denominado padro MPC. Este padro tambm definiu a taxa de transferncia de dados nestes tipos de discos. Cronologicamente , temos as seguintes taxas padro: 150Kb/segundo - Velocidade Simples (1x)Padro MPC-1 300Kb/segundo - Velocidade Dupla (2x)Padro MPC-2 450Kb/segundo - Velocidade Tripla (3x)Padro MPC-3 650Kb/segundo - Velocidade Qudrupla (4x)Padro MPC-4 1.2Kb/segundo - Velocidade ctupla (8x)Padro MPC-8 Um, outro tipo de disco tico est surgindo no mercado , trata-se do WORM(Write once Read Many), que permite uma nica gravao, atravs de dispositivo apropriado, e depois somente leitura. EXERCCIOS 1 - O que um interface de E / S? 2 - Cite alguns exemplos de interfaces atualmente empregados em computadores. 3 - O que caracteriza uma transmisso do tipo serial? 4 - Explique em linhas gerais o funcionamento de uma transmisso serial.

5 - O que caracteriza uma transmisso do tipo paralela? 6 - Explique em linhas gerais o funcionamento de uma transmisso paralela. 7 - Descreva o funcionamento do mecanismo de impresso de uma impressora matricial. 8 - O que dot pitch? 9 - O que pixel? 10 - Quais so as tecnologias de fabricao de monitores de vdeo que voc conhece? 48 Arquitetura de computadores Prof.: Joo Dias