Memória. Função: armazenamento de dados e instruções h FFFF FFFE h FFFF FFFF h byte.

Documentos relacionados
CPU. CPU Unidade Central de Processamento. Função: leitura, escrita e processamento de dados

EEL Microprocessadores

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 3

Memória virtual. Sistemas Segmentados

Arquitetura do 8086/8088

Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação MATA49 Programação de software básico Arquitetura Intel

MATA49 Programação de Software Básico

Registradores. Os processadores possuem espaços específicos onde são guardados valores, os chamados registradores.

CPU DE 8 BITS primeiro microprocessador evolução rápida, com a consolidação dos processadores de 8 bits

MICROPROCESSADORES 2º TESTE - A

Nível da Arquitetura do Conjunto das Instruções

ENGENHARIA DE SISTEMAS MICROPROCESSADOS

Sistemas de Microprocessadores I Lista de exercícios (questões de provas de semestre anteriores)

No. de bits. O primeiro IBM PC foi construído com o 8088 (versão de 8 bits do 8086).

Endereçamento e Formato de Instruções

Nome: N.º Ano: Turma: Turno: Responde às seguintes questões 1. Qual o primeiro nome do computador à base de transístores?

Organização Funcional

X86 - Modo Protegido (32bits) Introdução (parte 1)

EEC2104 Microprocessadores

Organização de Computadores

Sistemas de Computação

Módulo 3 - Estrutura e configuração de Sistemas Operativos monoposto

Arquitetura e Organização de Computadores

Organização de Computadores

Prof. Leonardo Augusto Casillo

Sistemas de Computação para Controle e Automação CIC132. Assembly. Assembly. Notas. Décima quarta aula: Introdução a programação Assembly

Nível da Arquitetura do Conjunto de Instruções. Ronaldo de Freitas Zampolo

Capítulo 1 1. UNIDADE DE INTERFACE DE BARRAMENTO

Antes de deixarmos o hardware (1) Nível da Arquitetura do Conjunto das Instruções

Aula 10 Processadores de Propósito Geral

Microprocessadores CPU. Unidade de Controle. Prof. Henrique

Memória. Gestão do espaço lógico Paginação Segmentação com paginação

Estrutura Básica de um Computador

ESTRATÉGIAS DE ALOCAÇÃO AULA 11 Sistemas Operacionais Gil Eduardo de Andrade

Exercícios resolvidos (aula de 4 de Maio) Resolução:

ESTRUTURA E FUNCIONAMENTO DO COMPUTADOR

Arquitectura de Computadores

Sistemas de Memória III

2 - Processadores. CEFET-RS Curso de Eletrônica. Organização de Computadores. Profs. Roberta Nobre & Sandro Silva

Organização de Computadores 1

Arquitetura de Microprocessadores

Função Fundamental do SO

Disciplina: Arquitetura de Computadores

SSC0112 Organização de Computadores Digitais I

Computação L. Apresentação da Disciplina e Conceitos Básicos de Computadores

Prof. Sandro Wambier

Linguagem de Montagem e Assembly. André Luiz da Costa Carvalho

1.3. CONCEITOS BÁSICOS DE INFORMÁTICA

Execução detalhada de instruções

Solução Lista de Exercícios Processadores

MSP430 - Arquitertura

14/3/2016. Prof. Evandro L. L. Rodrigues

EXEMPLO DE ARQUITETURAS REAIS INTEL 8086 AULA 07 Arquitetura de Computadores Gil Eduardo de Andrade

Execução detalhada de instruções

Representação em nível de máquina

Organização e Arquitetura de Computadores INTRODUÇÃO

Programação ao nível da máquina

SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

Sistemas Digitais (SD) Memórias

Endereçamento de Memórias e Lógica de Seleção

GERENCIAMENTO DE PROCESSOS

O COMPUTADOR POR DENTRO

Arquitecturas Alternativas. Arquitectura X86-64 Arquitecturas RISC Exemplo: MIPS Desempenho de sistemas Pipelining

SEL-0415 Introdução à Organização de Computadores Aula 2 Prof. Dr. Marcelo Andrade da Costa Vieira

Microprocessadores I ELE Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS -

ORGANIZAÇÃO DE COMPUTADORES O PROCESSADOR E SEUS COMPONENTES

Capítulo 5. Parte de Controle

Arquitectura de Computadores (ACom)

Elementos Físicos do SC e a Classificação de Arquiteturas

Introdução à Arquitetura de Computadores

Introdução aos Sistemas de Computação (ISC) Curso de Administração de Negócios Eletrônicos Professor :

Lic. Engenharia de Sistemas e Informática

Representação de Dados (inteiros não negativos)

Arquitetura de Microprocessadores

CPUs e Barramentos. Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007

Introdução aos Sistemas Computacionais

Lógica de Seleção e Mapeamento de Memória

CPU. Funções: Componentes: Processamento; Controle. UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3

Símbolos e abreviaturas utilizadas na descrição das instruções

Arquitetura e Organização de Computadores

Introdução à Informática

SSC510 Arquitetura de Computadores 1ª AULA

ASSEMBLER. Autor: Rodrigo Ferreira Markus Vinicius Home Page

Engenharia Civil. Representação da Informação. Introdução à Computação

Organização e Arquitetura de Computadores I

Arquitetura de Computadores. Ciclo de Busca e Execução

Arquitectura de Computadores (ACom)

SSC0640 Sistemas Operacionais I

Microprocessadores. Família x86 - Evolução

EEL Microprocessadores. Parâmetros e Variáveis Locais 4/5/2010. Capítulo 7 Livro Ziller. Prof. Raimes Moraes GpqCom EEL UFSC

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 5

Arquitetura e Organização de Computadores

Endereçamento. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática

Arquitetura e Organização de Computadores

Aula 10 Microcontrolador Intel 8051 Parte 1

Infraestrutura de Hardware. Funcionamento de um Computador

Arquitetura e Organização de Computadores

Transcrição:

Memória Função: armazenamento de dados e instruções Estrutura Lógica: Endereço Conteúdo 0000 0000 h 1010 0010 0256 0A20 h 1101 1100 0D63 52E2 h 0011 1111 0D63 52E3 h 0110 1001 FFFF FFFE h 0111 0101 FFFF FFFF h 0010 1001 byte 1 Segmentos A memória é dividida em segmentos com localização variável. Segmento área especial da memória reservada por um programa para conter informação: instruções, dados, etc. Cada programa contém um ou mais segmentos, que podem começar em qualquer posição na memória, variar em tamanho e estar dispostos em qualquer sequência. 0000 0000 h Espaço utilizado pelo Sistema Operativo Segmento de Código Segmento de Dados Segmento Pilha FFFF FFFF h 2

Segmentos Segmento de Código ( Code Segment ) espaço da memória reservado para as instruções do programa Segmento de Dados ( Data Segment ) espaço da memória reservado para variáveis ou outros dados que estão a ser utilizados Poderão existir vários segmentos de código ou de dados 3 Segmentos Segmento Pilha ( Stack (StackSegment ) espaço da memória reservado para guardar temporariamente dados e endereços; É utilizado frequentemente como espaço para guardar temporariamente t ovalor de registos que são momentaneamente t necessários para outras operações, ou para a passagem de parâmetros para subrotinas Segmentos Extra ( Extra Segments ) espaços de memória adicionais reservados para dados, que possibilitam um acesso mais seguro e eficiente a diferentes tipos de dadosd da memória ói 4

Modelos de Programação Existem três modelos principais de programação em Assembly: Modelo Uniforme em Modo Real (Modelo Uniforme); ) Modelo Segmentado em Modo Real (Modelo Segmentado); Modelo Uniforme em Modo Protegido (Modelo Protegido). ) As diferenças entre os modelos recaem, do ponto de vista it do programador, sobretudo sobre o modo como são usados os registos de endereçamento (as outras diferenças relativas ao modo de endereçamento da memória estão escondidas do programador pelo sistema operativo) 5 Endereçamento é possível endereçar quantidades arbitrariamente grandes de memória recorrendo a esquemas de endereçamento mais complexos, que ultrapassam a capacidade de endereçamento directo Modelo Uniforme (modelo uniforme em modo real): 16 bits 64 kb (2 16 combinações 65.536536 posições de memória) Modelo Segmentado (modelo segmentado em modo real): 20 bits 1MB (2 20 combinações 1.048.576 posições de memória) Modelo Protegido (modelo uniforme em modo protegido): 32 bits 4GB (2 32 combinações 4.294.967.296 posições de memória) 6

CPU Intel 8080 Computadores com microprocessadores da INTEL 8080: - CPU de 8 bits (registos de 8 bit ) - Barramento de 16 bit (com 16 linhas de endereço) - Capacidade de endereçamento até 64kB (2 16 = 65.536 bytes) - Memória até 16, 32 ou 48 kb era possível endereçar toda a memória através do endereçamento directo com recurso a endereços de 16 bit, de 0000H a FFFFH, restando ainda endereços 7 CPU Intel 8080 Endereçamento directo: endereço de 16 bit => 0000H-FFFFH => 65.536 posições de memória 0000 h Prefixo do Segmento do Programa 0100 h Código do Programa Memória não utilizada Sistema Operativo CP/M-80 16, 32 ou 48kB FFFF h Endereços sem Memória Instalada 64kB 8

CPU Intel 8086 Computadores com microprocessadores da INTEL 8086: - CPU de 16 bits (registos de 16 bit ) - Barramento de 16 bit (com 16 linhas de endereço) - Memória até 1Mbyte (2 20 = 1.048.576 bytes) os microprocessadores da linha INTEL 8086, usados nos computadores pessoais, usavam um esquema de memória segmentada. era possível endereçar toda a memória através do endereçamento directo com recurso a endereços de 20 bit (obtidos pela associação de dois endereços de 16bit), de 00000h a FFFFFh 9 Modelo Segmentado No Modelo Segmentado em Modo Real, o programa pode utilizar toda a memória (1MB - 1.048.576 bytes). Modo Real -oprocessador apenas executa um programa de cada vez. Modelo Segmentado apenas a associação de dois endereços de 16bit permite endereçar qualquer posição dentro dos 1MB, sendo um dos endereços o da base do segmento, e o outro o do deslocamento dentro do segmento. 10

Modelo Segmentado endereço do segmento ( segment address ): valor de referência de contagem dos endereços, que encontra-se guardado num registo específico qualquer endereço de memória divisível por 16 (fronteira de um parágrafo) pode ser considerada o início de um segmento (ou endereço de um programa) a casa hexadecimal menos significativa toma sempre o valor 0, pelo que é omitida endereço de 20 bits, composto por 16 bits + 4 bits LSD com valor 0 11 Modelo Segmentado endereço efectivo ( offset address ): representa um desvio face a uma referência de contagem de endereços endereço de 16 bits (65.536 posições de memória = 64 kbytes) um segmento pode estar localizado em quase qualquer posição da memória (a partir de endereços referentes à fronteira de um parágrafo) ocupando o espaço necessário para o programa (que pode chegar aos 64kB). 12

Modelo Segmentado endereço físico ( actual address ): endereço de uma posição de memória: é obtido através da soma do endereço eçoefectivo ect ao endereço eço base do segmento e endereço do segmento (16 bit): endereço efectivo (16 bit): endereço físico (20 bit): 21D0 0 h + 507A h 26D7A h A notação utilizada para o endereço físico consiste na associação dos endereços base do segmento e efectivo, separados por dois pontos CS:IP DS:BX SS:SP DS:SI SS:BP Ex: 21D0:507A DS:DI 13 Modelo Segmentado Endereço físico de 20 bit => 00000h - FFFFFh => 1.048.576 posições de memória 00000 h Espaço utilizado pelo Sistema Operativo CS DS ES SS Segmento de Código Segmento de Código Segmento de Dados Segmento de Dados Segmento Pilha Pilha IP SI DI SP CS:IP DS:SI ES:DI SS:SP FFFFF h 14

Modelo Segmentado A existência de mais de um registo de segmento de dados (DS, ES, FS, GS) permite que, a qualquer momento, se aceda a mais de um Segmento de Dados. Só se pode aceder aumsegmento de Código de cada vez, apesar de poder existir mais do que um, pois só existe um registo de segmento de código (CS). Só existe um Segmento Pilha para cada programa, especificado pelo registo de segmento pilha SS. 15 Modelo Protegido Surgiu com os computadores com CPU da INTEL 80386: - CPU de 32 bit - Barramento de 32 bit - Memória até 4GB = 4.294.967.296 bytes No Modelo Uniforme em Modo Protegido, o programa e os dados com que trabalha, pode utilizar memória até 4GB - 4.294.967.296 967 296 bytes. Modo Protegido - o processador pode executar vários programas/tarefas de cada vez, protegendo-osos uns dos outros. Modelo Uniforme os registos genéricos (32bit) podem endereçar qualquer posição dentro dos 4GB. 16

Modelo Protegido Endereçamento directo (no segmento da memória reservado para o programa): deslocamento de 32 bit => 0000 0000 h - FFFF FFFF h => 4.294.967.296 posições de memória 0000 0000 h Program Segment Prefix CS DS SS ES Código do Programa EIP EBX Dados do Programa ESI EDI Pilha ESP FFFF FFFF h 17 Programas com formato.com Endereçamento directo (no segmento da memória reservado para o programa): deslocamento de 16 bit => 0000h - FFFFh => 65.536 posições de memória 0000 h Program Segment Prefix 0100 h Dados do Programa CS DS SS ES BX Código do Programa IP Espaço de Memória não Utilizado FFFF h Pilha SP 18