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

Slides:



Advertisements
Apresentações semelhantes
Software Básico Silvio Fernandes
Advertisements

Software Básico Silvio Fernandes
SISTEMAS OPERACIONAIS (SO) Aula 5 Luciana A. F. Martimiano 2002
Arquitetura de Computadores
WebDesign Redes de Computadores Aula 05
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 06: Funções.
Estruturas de Repetição
Arquitetura e organização de computadores
Técnicas para operações E/S
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ESTRUTURAS DE DADOS AVANÇADAS Aula /08/2011 Professor Leomir J. Borba-
Arquitetura de Computadores
TEORIA DA COMPUTAÇÃO Parte III  Máquina de Turing
Ciclos, Vectores e Gráficos Simulação da Queda de Corpos II
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 03: Computador.
Software Básico Silvio Fernandes
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Aula 04: SIC/XE
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes
Arquitetura dos Microprocessadores 8086 e 8088
Algoritmos e Programação Linguagens de Programação Teoria Aula 5 (05/05) Universidade Federal do Vale do São.
Introdução a Programação Renata Freire
Arquitetura de Sistemas Operacionais
1 Tipos definidos O programador pode definir seus próprios tipos de dados tipos complexos usados da mesma forma que os simples declaram-se variáveis utilizando-se.
Introdução à Informática
Rganização de Computadores Melhorias de Desempenho com Pipelines Capítulo 6 – Patterson & Hennessy Organização de Computadores Melhorias de Desempenho.
Sistemas Operacionais
LPG - I: Ponteiros e Vetores/Matrizes UDESC - SBS
Estruturas de Dados II Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Organização da Memória Principal
Arquitetura de Computadores
Ponteiros.
Revisão da Linguagem C.
Processadores – Aula 3 Professor: André Luis Meneses Silva
Processadores – Aula 3 Professor: André Luis Meneses Silva
Introdução à Programação
Semana 03: Comandos de desvio de fluxo. Expressões lógicas.
PROGRAMAÇÃO I UNIDADE 1.
Funcionamento básico de um computador
Linguagem de Montagem.
Representação de Instruções
Material Didático Proposto
Fundamentos de programação CUDA
Salas de Matemática.
Estrutura de dados, pseudocódigo
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 02: Introdução.
Arquitetura de computadores
Sistemas Operacionais
Semana 03 Comandos de desvio de fluxo. Expressões lógicas.
ORGANIZAÇÃO DE COMPUTADORES
Arquitetura de computadores
História dos computadores e da programação
Organização e Arquitetura de Computadores
Agenda - Aula 2 Introdução (Computador Digital) Processadores
Agenda Modos de Endereçamento.
Linguagem e Ambiente Scratch
Campus de Caraguatatuba Licenciatura em Matemática Semestre de 2013
Nome alunos 1 Título UC. Título – slide 2 Conteúdo Conteúdo 2.
BCC /01 Aula Teórica 09 Funções Material Didático Proposto. 1 BCC701 – Programação de Computadores I Universidade Federal de Ouro Preto Departamento.
Organização e Arquitetura de Computadores
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
8088 Assembly Software Básico Mitsuo Takaki.
Registradores.
O que devem fazer os Microprocessadores ?
ARQUITETURA DE COMPUTADORES Nível do Conjunto de Instruções
Transcrição da apresentação:

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

Programação com o SIC Exemplos simples de programação na linguagem assembler do SIC e do SIC/XE Objetivo de familiarizar com os conjuntos de instruções e o assembler das máquinas 2

Primeiro exemplo do SIC 3

Primeiro exemplo do SIC/XE 4

Primeiro exemplo do SIC e SIC/XE 5 O que fazem esses códigos? Qual a diferença entre eles? Qual o mais eficiente? Por quê?

Primeiro exemplo do SIC e SIC/XE 6 A instrução WORD reserva o espaço de uma palavra na memória, e inicializa esta palavra com o valor especificado A instrução RESW reserva uma ou mais palavras de memória para que sejam usadas pelo programa BYTE e RESB são semelhantes às anteriores, porém definem caracteres em vez de palavras

Operações aritméticas - SIC 7

Operações aritméticas – SIC/XE 8

Operações aritméticas 9 No SIC todas as operações aritméticas são realizadas usando-se o registrador A e um endereço de memória A sequencia de instruções armazena os valores – (ALPHA + INCR - 1) em BETA – (GAMMA + INCR - 1) em DELTA

Operações loop e indexação - SIC 10

Operações loop e indexação – SIC/XE 11

Operações loop e indexação 12 O registrador de indexação X é inicializado com zero Na 1ª execução o endereço-alvo da instrução LDCH será o 1º byte de STR1, que é copiado para o 1º byte de STR2 A instrução TIX incrementa o registrador X e com seu novo valor com o operando (constante 11) JLT executará um salto se o código de condição for menor que A principal diferença no SIC/XE é a instrução TIXR, que funciona como TIX mas a comparação é feita com outro registrador (T) ao invés da memória

Indexação e loop - SIC 13

Indexação e loop – SIC/XE 14

Indexação e loop 15 No último exemplo as variáveis ALPHA, BETA e GAMMA são arrays de 100 palavras cada A tarefa do loop é somar os elementos correspondentes de ALPHA e BETA, armazenando os resultados em GAMMA O valor do registrador de indexação tem que ser incrementado em 3 bytes (uma palavra) – A instrução TIX sempre soma 1 ao registrador X, portanto preferimos recorrer a instruções aritméticas

Operações de E/S - SIC 16

Operações de E/S - SIC 17 O programa lê um byte de dados do dispositivo F1 e o copia no dispositivo 05 A entrada é realizada pela instrução RD que transfere um byte de dados deste dispositivo para o byte mais à direita do reg. A Para que RD possa ser executada é preciso que o dispositivo de entrada esteja pronto O programa verifica esta condição usando a instrução TD – Se o dispositivo estiver pronto cc passa menor que – Se não estiver igual

Sub-rotina e entrada de registros - SIC 18

Sub-rotina e entrada de registros – SIC/XE 19

Sub-rotina e entrada de registros 20 Ler um registro de 100 bytes de um dispositivo de entrada para a memória A leitura é feita em uma sub-rotina que é chamada pelo programa principal através de JSUB No final da sub-rotina, uma instrução de RSUB devolve o controle para instrução subsequente a JSUB

Referências Leland L Beck.. Desenvolvimento de software básico. 2ª ed. Rio de Janeiro: Campus, p. 21