for Information Interchange. - PDF Download grátis
Download "for Information Interchange."
Sara Molinari Belo
1 6 Memória: 6.1 Representação de Memória: Toda a informação com a qual um sistema computacional trabalha está, em algum nível, armazenada em um sistema de memória, guardando os dados em caráter temporário ou permanente. Como já estudamos, a menor quantidade de informação que podemos armazenar é um dígito binário, ou BIT. Utilizando um bit estamos limitados a representar somente dois dados. Precisamos definir agrupamentos de bits para representarmos mais símbolos ou valores. Para representarmos uma letra ou número através de bits convencionou-se montar um agrupamento de 8 bits, chamado de byte. Um byte pode armazenar um caractere, que é a unidade básica de armazenamento na maioria dos sistemas computacionais. Vários padrões de codificação de caracteres utilizando bits foram criados, o que foi adotado pela maioria dos fabricantes foi o ASCII American Standard Code for Information Interchange. Alguns dos padrões existentes, como o ABNT (Associação Brasileira de Normas Técnicas) baseiam-se no padrão ASCII, fazendo adaptações para símbolos particulares de uma linguagem, como ~, ^ e ç. Alguns exemplos de codificação ASCII: Letra A é representada pelo byte: Número 5 é representado pelo byte: Espaço em branco é representado pelo byte: Caracter ^ é representado pelo byte: Os primeiros processadores tinham capacidade de trabalhar com somente um caractere por vez, eram chamados de processadores de 8 bits. A palavra é a quantidade de bits que uma UCP (Unidade Central de Processamento ou Processador) processa de uma vez. Quanto mais palavras a UCP consegue processar, maior sua velocidade. Uma UCP de 64 bits processa em uma operação a mesma quantidade de dados que uma UCP de 16 bits faz em quatro operações
2 O sistema de medida adotado para memória utiliza como base 2 por estarmos lidando com o sistema binário. Desta forma, 2 elevado a décima potência (2 10 = 1024) de uma unidade equivale a uma unidade no próximo nível da escala de valores bytes = 1 Kilobyte (KB) 1024 kilobytes = 1 Megabyte (MB) 1024 megabytes = 1 Gigabyte (GB) 1024 gigabytes = 1 Terabyte (TB) 1024 terabytes = 1 Petabyte (PB) 1024 petabytes = 1 Exabyte (EB) 1024 exabytes = 1 Zetabyte (ZB) 1024 zetabytes = 1 Yottabyte (YB) 6.2 Tipos de Memória: Os componentes nos quais podemos armazenar informações em um sistema computacional, chamados de memória do computador podem formar em uma das seguintes classes: Memória secundária; Memória principal; Memória cache; Registradores. 6.3 Hierarquia de Memória:
3 As características levadas em consideração para a utilização de um tipo de memória em um sistema computacional são o custo, a capacidade de armazenamento e a velocidade de acesso à informação. A medida que descemos na hierarquia de memória, observamos que: O custo por bit diminui; A capacidade aumenta; O tempo de acesso aumenta; A freqüência de acesso à memória pelo processador diminui Registradores: Registradores são dispositivos de memória presentes no interior da UCP, construídos utilizando semicondutores (por isso são elementos de armazenamento volátil). Sua função é a de armazenar dados que serão utilizados pela UCP para o processamento da instrução atual ou de uma das próximas; os resultados de um processamento também precisam ser guardados temporariamente na UCP para serem novamente utilizados pela ULA ou para serem transferidos a um dispositivo de memória externo a UCP. Registradores estão no topo da pirâmide, portanto possuem baixa capacidade de armazenamento (normalmente, o tamanho da palavra do processador), alta velocidade e alto custo. Sua utilização será estudada com mais detalhes ao analisarmos o funcionamento da UCP Memória Projeto de Von Neumann: No projeto de Von Neumann estava prevista uma área de memória a partir da qual estariam todos os dados que seriam lidos e escritos pelo programa em execução. É necessário que esta memória apresente baixo tempo de acesso, pois será altamente dinâmica, com dados sendo inseridos e retirados de suas posições de memória a todo momento
4 6.4 Comunicação entre Memórias: Na maioria dos sistemas de computação, a memória principal é considerada rápida, mas não existe em grande quantidade, e a memória secundária é barata e existe em grande quantidade, mas muito lenta se comparada com as demais. Devese analisar as necessidades de tipo de memória do sistema, para que este não seja desnecessariamente caro ou insuportavelmente lento. Na prática as memórias são organizadas de modo que as mais rápidas (e conseqüentemente, mais caras e de menor capacidade de armazenamento) são localizadas mais próximas do processador. São armazenados nas memórias de alta velocidade os dados e instruções que o processador vai utilizar com mais freqüência. Em memórias mais lentas, com grande capacidade de armazenamento podem ser usadas para guardar dados e instruções que não serão necessários naquele momento. As memórias são organizadas hierarquicamente de forma a obtermos um sistema com desempenho (velocidade) próximo ao da memória mais rápida e custo por bit próximo ao da memória de menor custo. Em sistemas de computação mais antigos, a pirâmide não possuía memória cache e, desse modo, o processador era ligado diretamente à memória principal (Memória em 2 níveis). A partir do processador 486 foi implementada a memória cache (Memória em 3 níveis) Interação entre Processador e Memória Principal: Apesar de nosso componente básico da memória principal ser uma célula de bit, em uma referência a memória, o processador não realiza o acesso ao conteúdo de uma única célula de bit, mas sim a um conjunto de células de bits
5 O menor conjunto de células de bits onde é feito o acesso é chamado de locação de memória. Na maioria dos sistemas uma locação de memória é formada por 8 células de bit, logo uma locação de memória é conhecida como byte de memória. Em um acesso, o processador deve fornecer uma identificação da locação onde será feito o acesso. Esta identificação é somente um número, chamado endereço de memória. De posse deste endereço, a memória principal seleciona a locação correspondente e fornece ao processador a informação ali contida, no caso de um acesso de leitura; em um acesso de escrita, a memória principal armazena na locação indicada pelo endereço o dado fornecido pelo processador. A memória principal e o processador são interligados através de três barramentos distintos: O barramento de endereço é a via através da qual o processador transmite para a memória principal o endereço da locação onde será feito o acesso. O barramento de dados é a via através da qual o conteúdo da locação é transferida entre o processador e a memória principal. Pelo barramento de controle trafegam diversos sinais, através dos quais o processador controla o acesso a memória, indicando, por exemplo, se o acesso é de leitura ou de escrita. O número de vias no barramento de dados é o fator determinante para o desempenho do processamento do sistema
8 Ter desempenho semelhante ao das memórias de Leitura/Escrita, Ter segurança, permitindo apenas leitura de seu conteúdo, Ser uma memória não volátil. Todo sistema de computação utiliza uma parte do espaço da MP com memórias do tipo ROM. Nela estão localizadas rotinas que inicializam o computador quando este é ligado, chamadas de sistema de iniciação, boot loader ou bootstrap. As memórias ROM também sofreram uma evolução tecnológica ao longo do tempo, principalmente para torná-las mais práticas e comercialmente aceitáveis, sem perder a sua principal característica de serem memórias somente para leitura por parte dos programas aplicativos (embora, com sua evolução, elas possuam tipos que permitem a troca do seu conteúdo, sempre através de processos especiais e nunca por um simples programa aplicativo). A memória ROM pode ser de três tipos: PROM (Programmable Read Only Memory), EPROM (Erasable PROM) ou EEPROM (Electrically EPROM). A memória PROM permite apenas acessos para leitura dos dados nela gravados. As memórias EPROM e EEPROM podem ter seu conteúdo apagado através da exposição a raios ultravioleta e corrente elétrica, respectivamente