1 / 29

Software Básico

Universidade Federal Rural do Semiárido Departamento de Ciências Exatas e Naturais Ciência da Computação. Software Básico. Aula 04: SIC/XE. Silvio Fernandes 2010.1. Memória do SIC/XE.

star
Download Presentation

Software Básico

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Universidade Federal Rural do Semiárido Departamento de Ciências Exatas e Naturais Ciência da Computação Software Básico Aula 04: SIC/XE Silvio Fernandes 2010.1

  2. Memória do SIC/XE • A estrutura de memória do SIC/XE é a mesma do SIC. As posições de memória são formadas por três bytes consecutivos. • A capacidade de memória é aumentada para 1 Mbyte (220). • Este aumento de capacidade de endereçamento provoca modificações no formato das instruções e modos de endereçamento.

  3. Registradores no SIC/XE • O SIC/XE possui quatro registradores a mais do que o SIC.

  4. Formato de dados no SIC/XE • O Formato do SIC standard continua válido. • É acrescentado um tipo de dados de ponto flutuante de 48 bits. S Expoente Mantissa 1 bit 11 bits 36 bits

  5. Dados de ponto flutuante • A mantissa é um valor entre 0 e 1. (0.XXX). • O expoente é um número binário sem sinal entre 0 e 2047 (211). • O sinal do número é indicado pelo valor de S. • S = 0  número positivo. • S = 1  Número negativo. • Um valor igual a zero é indicado com todos os bits iguais a zero.

  6. Formatos de instrução no SIC/XE • O Formato do SIC não é mais válido devido ao aumento da capacidade de memória. • O SIC/XE possui 4 formatos. • Formato 1: usado para instruções que não utilizam nenhum operando. Código da Operação 8 bits

  7. Formatos de instrução no SIC/XE • Formato 2: usado para instruções que utilizam como operando o conteúdo de dois registradores ou o conteúdo de um registrador e uma constante de até quatro bits Código da Operação R1 R2 8 bits 4 bits 4 bits

  8. Formatos de instrução no SIC/XE • Formato 3: usado para instruções em que um dos operandos é o conteúdo de uma posição de memória que pode ser alcançada por um deslocamento de 15 bits. • Formato compatível com o SIC standard. • Flags N e I devem fazer parte do código da operação, o flag X deve indicar o modo de endereçamento e os flags B, P e E se juntem ao campo Deslocamento formando o campo endereço. Código da Operação N I X B P E Deslocamento 6 bits 6 x 1 bit 12 bits

  9. Formatos de instrução no SIC/XE • Formato 4: usado para instruções que acessam operandos em uma memória com capacidade de endereçamento de 220 posições. • Por possuir 32 bits, não é compatível com o formato SIC standard. Código da Operação N I X B P E Deslocamento 6 bits 6 x 1 bit 20 bits

  10. Modos de endereçamento no SIC/XE • Endereçamento Relativo: • Criados para serem usados com instruções de formato 3.

  11. Modos de endereçamento no SIC/XE • Endereçamento Direto: • Se B = 0 e P = 0 o campo deslocamento em uma instrução de formato 3 (E = 0) será o endereço alvo. • EA = Deslocamento (12 bits). • Para instruções no formato 4 (E = 1), B e P são necessariamente iguais a 0, • EA = Endereço (20 bits).

  12. Modos de endereçamento no SIC/XE • Endereçamentos Relativo e Direto: • Se X = 1 (endereçamento indexado)

  13. Modos de endereçamento no SIC/XE • Os flags I e N são usados para indicar o uso apropriado do endereço alvo. • I = 1 e N = 0: o endereço alvo será usado como operando e nenhum acesso será feito a memória (Endereçamento Imediato). • I = 0 e N = 1: o endereço alvo apontará para a posição de memória cujo conteúdo é o endereço do operando (Endereçamento Indireto). • I = 1 e N = 1: instruções SIC/XE que não usam endereçamento imediato ou indireto (endereço da memória) • I = 0 e N = 0: instruções no formato SIC (formato 3). Flags B,P e E são usados como parte do endereço (endereço da memória)

  14. 0 Para cálculo do endereço alvo 1 Modos de endereçamento no SIC/XE • Formatos de instrução Sem referência a memória Endereçamento relativo Campo de endereço extendido

  15. Modos de endereçamento no SIC/XE • Compatibilidade • Todas as instruções SIC tem 8 bits de código de operação terminando com 00 • Se n=i=0, bits b,p,e são considerados como parte dos 15 bits campo de endereço

  16. Conjunto de instruções do SIC • O SIC possui um formato básico de instruções suficiente para executar a maioria das tarefas (programas) simples. • Existem instruções que definem e armazenam o conteúdo dos registradores (LDA, LDX, STA, STX, etc). • Existem instruções aritméticas (ADD, SUB, MUL, etc). • Todas as operações aritméticas envolvem o registrador A e uma palavra de memória. • Existe a instrução COMP, que compara o valor do registrador A com uma palavra de memória. • Utiliza um código de condição (CC) para determinar o resultado da comparação (<, = ou >). • Existem instruções de salto condicional (JLT, JEQ, JGT) que executam o salto com base no valor de CC. • Existem duas instruções específicas para o uso de sub-rotinas (JSUB e RSUB).

  17. Conjunto de instruções do SIC Mnemômico: nome da instrução. Formato: qual formato a instrução foi codificada e montada. Código da Operação: normalmente em hexadecimal. Efeito: significado da instrução. Notas: informações adicionais: P  instrução privilegiada. Xinstrução disponível apenas no SIC/XE. F  instrução de ponto flutuante. C  Código de condição.

  18. Conjunto de instruções do SIC Ex: ADD m ¾ 18 A  (A) + (m..m+2) Mnemônico: ADD m Formatos: 3 ou 4 Código: 18H ou 00011000B Efeito: adicionar a palavra composta pelos bytes m, m+1 e m+2 da memória com a palavra contida no registrador acumulador. Notas: nenhuma

  19. Conjunto de instruções do SIC Ex: COMP m ¾ 28 A  (A) : (m..m+2) C Mnemônico: COMP m. Formatos: 3 ou 4. Código: 28H ou 00101000B. Efeito: compara o conteúdo do registrador acumulador com a palavra armazenada nas posições m, m+1 e m+2. Notas: o resultado é armazenado no código de condição (<, + ou >)

  20. Conjunto de instruções do SIC

  21. Conjunto de instruções do SIC

  22. Conjunto de instruções do SIC

  23. Conjunto de instruções do SIC

  24. Conjunto de instruções do SIC

  25. Conjunto de instruções do SIC • ** LPS: carrega status do processador com base em informações que se iniciam no endereço m • ***: SIO: ativa canal de I/O número (A); endereço do programa do canal é dado por (S)

  26. Tabela de modos de endereçamento • C = constante entre 0 e 4095 ou um endereço de memória contido nesta faixa. • m = endereço de memória ou constante maior que 4095. • Coluna notas: • 4 = instrução somente no formato 4. • D = instrução de endereçamento direto. • A = O assembler seleciona o modo relativo ao contador do programa ou ao registrador base. • S = compatível com o formato SIC standard.

  27. Tabela de modos de endereçamento

  28. Tabela de modos de endereçamento

  29. Referências • Leland L Beck.. “Desenvolvimento de software básico”. 2ª ed. Rio de Janeiro: Campus, 1993. 525p.

More Related