Beruflich Dokumente
Kultur Dokumente
Bacharelado em Sistemas de Informao 2 semestre Turma A 5 e 6 aulas 02 e 09/09/2013 Prof. Paulo Rangel paulo.rangel@tyaro.com.br
Infra-estrutura de TI
Contedo previsto Conjunto de Instrues e Endereamento
(referencia: Livro Arquitetura de Computadores de
Modos de endereamento
Instalando o Mars 4.3
Introduo
Conjunto de instrues bsicas para ajudar no
entendimento dos elementos de instrues de um processador; Adotaremos o MiniMIPS, baseado no Assembler dos processadores MIPS; Como ferramenta IDE (Integrated Development Environment) adotaremos o Mars4.3 da Missouri State University - EUA. Sendo software Open Source, o Professor disponibilizar cpia e orientao para que os alunos instalem em seus computadores;
Introduo
Os processadores MIPS, produzidos pela MIPS
interfaces padronizadas, que nos permitem controlar e a verificar subsistemas crticos (leo, temperatura, combustvel, velocidade, etc.) e assim conduzi-los, mesmo veculos novos que no conhecemos, apesar de suas ligeiras diferenas;
so o seu conjunto de instrues; O MiniMips possui um conjunto de instrues semelhantes a maioria dos processadores modernos; Elas so do tipo carga / armazenamento (load /store); Os dados devem ser carregados em registradores antes de serem processados, o resultados tambm so armazenados em registradores e depois transferidos para a memria;
compreender:
O mtodos de armazenamento na memria;
As funes das instrues de carga e armazenamento;
mantidos nos registradores e; Um nmero de diversas instrues que permitem uma programao eficiente;
armazenados, Nas instrues de mquina que operam e armazenam os dados em registradores ou na memria
processadas pela EIU (execution and integer unit); A EIU tem 32 registradores de uso geral, cada um com 32 bits que podem armazenar endereos de memria; A ULA (Unidade Lgica/Aritmtica), executa somas, subtraes e operaes lgicas; Uma Unidade aritmtica especial executa as divises e multiplicaes, cujos resultados utilizam registradores especiais (Hi e Lo) de onde so movidos para os registradores de uso geral.
http://courses.missouristate.edu/kenvollmar/mars/download.htm
http://courses.missouristate.edu/kenvollmar/mars/download.htm
g = ( b+c) (e+f)?
A sequncia de comandos para executar a equao seria:
Vale registrar que o smbolo # representa um comentrio que ignorado pelo processador
que fornecer valores inteiros para determinar endereos de memria ou constantes numricas. Eles devem ser nos formatos decimal (base 10) ou hexadecimal (base 16), sendo convertidos para o formato binrio para processamento da mquina:
processadores RISC (Reduced instruction-set computer); Existem 64 cdigos da operao em conjuntos no sobrepostos que permitem ao hardware reconhecer a operao e assim tratar o restante dos campos; Em nossos estudos no discutiremos a questo do quantidade de deslocamento nas instrues tipo registrador;
as seguintes equaes:
a=b+c d = (e + f) (g + h) i=a+d j = ( b + h) ( c + e) + (g f)
Considerando que:
de numerao binrio; 1703 - Gottfried Leibniz desenvolveu a lgica em um sentido formal e matemtico, utilizando o sistema binrio. Em seu sistema, uns e zeros tambm representam conceitos como verdadeiro e falso, ligado e desligado, vlido e invlido; 1854 - O matemtico ingls George Boole (1815-1864) publicou os princpios da lgica booleana, onde as variveis assumem apenas valores 0 e 1 (verdadeiro e falso), que passou a ser utilizada a partir do incio do sculo XX.
as seguintes equaes:
a=b c d=ef i= g h j = ( ( a d ) )
Considerando que:
Fonte: http://aprendendomatematika.blogspot.com.br/2012/07/como-calcular-numeros-binarios.html
negativos.
(32bits), entre memria e registradores. Cada uma dessas instrues especifica um registrador e um endereo de memria. O registrador, o qual o destino do dado para carga e a origem do dado para o armazenamento, especificado no campo rt de uma instruo no formato I . O endereo de memria especificado em duas partes, que podem ser somadas para formar o endereo: um inteiro de 16 bits com sinal na instruo uma constante de deslocamento, que somada ao valor-base no registrador rs . No formato da linguagem assembly, o registrador origem/destino rt especificado primeiro, seguido pela constante de deslocamento e pelo registrador base rs entre parnteses. Colocar rs entre parnteses similar notao de indexao A(i) das linguagens de alto nvel.
seguinte, acompanhado pela conveno de endereamento de memria. Note que o deslocamento pode ser especificado como um inteiro absoluto ou atravs de um nome simblico, previamente definido. Instrues de carga e armazenamento que tratam outros tipos de dados, que no palavras, no fazem parte dos nossos estudos. Introduziremos somente uma outra instruo de carga, que nos permite colocar uma constante arbitrria em um determinado registrador.
colocar uma constante arbitrria em um determinado registrador. Uma constante pequena, que pode ser representada em 16 bits ou menos, pode ser carregada em um registrador atravs de uma nica instruo a d d i, cujo outro operando o registrador $zero (o qual possui sempre 0). Uma constante maior deve ser colocada em um registrador em dois passos: os 16 bits superiores so carregados na metade superior do registrador, atravs da instruo de "carga imediata acima" (load upper immediate l u i ) e os 16 bits inferiores so ento inseridos atravs de uma instruo "ou imediato" (or immediate o r i ) . Isso possvel pois LUI preenche a metade inferior do registrador destino com 0s, portanto, quando feita a operao OR desses bits com o operando imediato, este simplesmente copiado na metade inferior do registrador.
partir do ponto onde ele esta saltando A 2 instruo (salto registrador), especifica um registrador que possui o endereo para onde o controle do programa dever seguir.
partir do ponto onde ele esta saltando A 2 instruo (salto registrador), especifica um registrador que possui o endereo para onde o controle do programa dever seguir.
de que condies estejam satisfeitas, o MiniMIPS prov 3 tipos. Tambm existem as funes de comparao e veremos abaixo os 2 tipos que esto disponveis no MiniMIPIS:
Modo de Endereamento
Modo de Endereamento
Modo de Endereamento
Modo de Endereamento
O MiniMIPS tem uma arquitetura de carga/armazenamento: os
operandos devem estar nos registradores antes que eles possam ser processados. As nicas instrues MiniMIPS que referenciam endereos de memria so carga, armazenamento e saltos/desvios. Esse mtodo, combinado com os modos de endereamento, at certo ponto limitados, possibilita-nos um hardware eficiente para executar as instrues MiniMIPS. Existem outros modos de endereamento que no sero discutidos nesse curso. Entretanto, os modos de endereamento utilizados no MiniMIPS so mais do que adequados por comodidade em programao e eficincia dos programas resultantes. Ao todo, 20 instrues MiniMIPS foram introduzidas neste curso, resumidas na Tabela 5.1 para reviso e fcil referncia. Esse conjunto de instrues bastante adequado para compor programas razoavelmente complexos.
Modo de Endereamento
Modo de Endereamento
Infra-estrutura de TI
Referncias recomendadas: TANENBAUM, Andrew S. Sistemas Operacionais
Modernos. 3 Edio. So Paulo: Pearson Prentice Hall, 2010 PARHAMI, Behrooz. Arquitetura de Computadores: de microprocessadores a supercomputadores. So Paulo: McGraw Hill, 2008 Missouri State University EUA
http://courses.missouristate.edu/kenvollmar/mars/download.htm ultimo acesso em 09/03/2013.
Infra-estrutura de TI
DVIDAS
Exerccios Em classe
Quais so e para que servem as funes de salto (jump) e de desvio
(branch)? Quais so e para que servem as instrues de carga (load) e de armazenamento (store)? Quanto aos argumentos utilizados, qual a principal diferena entre funes aritmticas e lgicas?
Exerccios Em classe
O trecho de programa seguinte computa um resultado f(n) no
registrador $s l , quando um dado inteiro n no negativo est no registrador $s0. Adicione comentrios apropriados s instrues e caracterize f(n).
Exerccios Em classe
O trecho de programa seguinte computa um resultado f(n) no
registrador $s l , quando um dado inteiro n no negativo est no registrador $s0. Adicione comentrios apropriados s instrues e caracterize f(n).