Arquitetura de Computadores

Slides:



Advertisements
Apresentações semelhantes
Parte 1: Organização de Computadores
Advertisements

Parte 1: Organização de Computadores
CPU: Controle e processamento
Arquitetura de Computadores
WebDesign Redes de Computadores Aula 05
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores.
Execução de Programas Partes de um programa: ‣ Dados
Organização de computadores Professora Marcela Santos Aula 8 – Conjunto de instruções.
SOFTWARE BÁSICO.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 03: Computador.
Unidade Lógica e Aritmética Introdução à Ciência da Computação
Sistemas Embarcados Microcontroladores PIC
Chip-Select e Controle de Interrupção Sistemas Embarcados.
Arquitetura dos Microprocessadores 8086 e 8088
Arquitetura dos Microprocessadores 8086 e 8088 Sistemas Embarcados.
Arquitetura dos Microprocessadores 8086 e 8088
Organização da Memória
ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM
ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM
ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM
Sistemas Operacionais
Conhecendo Hardware Parte 1
Professor: Erivelto Tschoeke – UDESC/CEPLAN
O MICROPROCESSADOR INTEL 8080
Sistemas Digitais Microprocessados
REPRESENTAÇÃO DE INSTRUÇÕES
Organização da Memória Principal
ARQUITETURA DE COMPUTADORES ANEXO-1: INSTRUÇÕES (LOGICAS) AND DE DADOS ENTRE REGISTRADORES REG 0 :AH,AL,AX,BH,BL,BX,CH,CL,CX,DH,DL,DX,SI,DI,SP,BP,CS, DS,ES,SS.
ANEXO-1: INSTRUÇÕES (MOVIMENTAÇÃO DE DADOS)
Assembly x86.
Arquitectura de Computadores II
A arquitectura IA32 A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador. Tamanho da palavra Número.
Linguagem de Montagem.
Representação de Instruções
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Qualificadores.
João Ferreira, Dez 2003STRINGS, 1/6 Definição de String String (sentido lato) -> um string é um conjunto de valores (não necessariamente interpretáveis.
ORGANIZAÇÃO DE COMPUTADORES
Sistemas Operacionais I
Prática de Programação Assembly 8086
Arquitetura de computadores
Organização e Arquitetura de Computadores
Agenda Modos de Endereçamento.
Aula 13 - Armazenamento de Dados em Arquivos
Processamento de dados na UCP e memória UCP
Software Básico Nível ISA Capítulo 5 Mitsuo Takaki
ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM
UNIDADE LÓGICA ARITMÉTICA (ULA)
8088 Assembly Software Básico Mitsuo Takaki.
Registradores.
8 - 1 Organização Básica de Computadores e Linguagem de Montagem Ricardo Pannain ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM A pilha e subrotinas.
Rotinas do BIOS e DOS Serviços de vídeo (INT 10H)
Nível ISA.
Parte 3 Seção de Dados e Unidade de Controle
Organização Básica de Computadores e Linguagem de Montagem Ricardo Pannain ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM Arrays e modos.
UNIDADE LÓGICA ARITMÉTICA (ULA)
1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos.
Lucas Aranha ASSEMBLY Lucas Aranha
1 Programação em C Aula Considere que um banco armazena em arquivo as seguintes informações de seus clientes: número da conta (int), nome do cliente.
O que devem fazer os Microprocessadores ?
Afonso Ferreira Miguel
ARQUITETURA DE COMPUTADORES Nível do Conjunto de Instruções
Arquitetura do ARM RISC (Reduced Instruction Set Computer) – Conjunto relativamente grande de registradores – Modelo “load/store “de processamento Operações.
Modos de Endereçamento da família MC8051
Ney Laert Vilar Calazans Exemplo de Apresentação de TP1 Descrição Resumida de uma Arquitetura de Processador: o estudo de caso do Intel 8086 ORGANIZAÇÃO.
Alocação Dinâmica Dilvan Moreira. Objetivos  Entender o que são e como usar:  Gerenciamento de Memória  Alocação Dinâmica em C.
EA869 Modos de Endereçamento Faculdade de Engenharia Elétrica e de Computação (FEEC) Universidade Estadual de Campinas (UNICAMP) Prof. Levy Boccato 1.
Transcrição da apresentação:

Arquitetura de Computadores Nível da linguagem de montagem III

Introdução básica a linguagem Assembly Será apresentado nesta aula uma introdução ao assembly do processador 8088. Tal assembly é baseado no Microsoft MASM, porém possui algumas modificações existentes no assembly utilizado nos SOs baseados no UNIX. Para podermos entender a sintaxe da linguagem, serão apresentados os seguintes aspectos do MASM: Organização da memória; Registradores acessíveis; Modos de endereçamento; Instruções; Pseudo-instruções;

Organização da memória A memória do 8088 consiste apenas em um vetor de bytes de 8 bits endereçáveis. Essa memória é utilizada para armazenamento de instruções, pilha e dados. O 8088 separa a memória em 4 segmentos de 65.536 bytes cada: Código; Dados; Pilha; Extra;

Registradores Está disponível para o programador assembly o acesso a o seguinte grupo de registradores: Registradores gerais; Registradores de segmento; Registradores de ponteiro e índice; Registradores de flag.

Registradores gerais

Registradores gerais AX BX CX DX Acumulador. Comumente usado em operações matemáticas e de E/S. BX Base. Comumente usado como uma base ou registrador apontador. CX Contador. Usado freqüentemente em loops. DX Deslocamento. Similar ao registrador de base.

Registradores gerais Estes registradores são definidos como registradores de uso geral, pois podemos realmente armazenar qualquer coisa que quisermos neles. São também registradores de 16 bits, o que significa que podemos armazenar um inteiro positivo de 0 a 65535, ou um inteiro com sinal de -32768 to 32768. AX tem um intervalo de 0 até FFFF. Isto significa que existe um intervalo de 0 até FF para AH e AL. Se tivermos de armazenar A61D em AX, AH conterá A6, e AL conterá 1D.

Registradores de segmento

Registradores de segmento CS Segmento de código. O bloco de memória onde o código é armazenado. DS Segmento de dados. A área na memória onde os dados são armazenados. Durante operações de bloco, quando grandes blocos de dados são movidos, este é o segmento a que a CPU comumente se refere. ES Segmento extra. Apenas outro segmento de dados, mas este é comumente usado quando se quer acessar o vídeo. SS É o segmento de pilha, em que a CPU armazena endereços de retorno de sub-rotinas.

Registradores de ponteiro e índice

Registradores de ponteiro e índice SI Índice de fonte. Freqüentemente usado para movimentações de blocos de instruções. Este é um ponteiro que, com um segmento, geralmente DS, é usado pela CPU para leitura. DI Índice de destino. Novamente, você o usará muito. Um outro ponteiro que, com um segmento, geralmente ES, é usado para escrita pela CPU. BP Apontador da base, usado em conjunto com o segmento de pilha. SP Apontador da pilha, comumente usado com o segmento de pilha.

Registradores de flags

Registradores de flags Funcionam como sinalizadores. As flags são apenas um bit de memória e se localizam dentro do processador. Como cada flag é apenas um bit, num dado momento elas só podem ser 1 ou 0 ("setada" ou "zerada"). Existem seis flags usadas para indicar o resultado de certas instruções. Um uso comum das flags é o de desviar a execução para um ponto em particular do código usando instruções de salto condicinal. Estas instruções farão o salto ou não dependendo do estado de uma ou mais flags. Apenas cinco das flags podem ser usadas deste modo - zero, sinal, carry, overflow e paridade. A sexta flag (carry auxiliar) e a sétima flag (flag de direção) são lidas por outro tipo de instrução.

Registradores de flags SF - Flag de Sinal; ZF - Flag de Zero; AF - Flag Auxiliar; PF - Flag de Paridade. CF - Flag de Carry (vai um).

Modos de endereçamento

Modos de endereçamento

Instruções

Instruções

Instruções

Pseudo instruções

Rastreador