Arquitetura do SET de instruções Instruction SET CISC vs RISC What’s assembly as to do with it?

Slides:



Advertisements
Similar presentations
Mario Côrtes - MO401 - IC/Unicamp- 2002s1 Ch1/ Morgan Kaufmann Publishers Lectures for 2nd Edition Note: these lectures are often supplemented.
Advertisements

Finite State Machine (FSM) Quando a sequencia das ações no seu projeto dependem do estado de um elemento sequüencial, uma máquina de estados finitos (FSM)
Processador 8 bits de dados e 16 bits de endereço ROM RAM I/O master slave constant mem : mem_type := ( -- load increment LDCi, 1, -- store it at 0x4000.
Marcos Aurélio e Nabucodonosor ® © CopyRights 2013 #Pronouns.
ESCALONAMENTO DE TAREFAS
No outono de 1982, nos EUA iniciou-se o Marriage Ministries lnternational, através do casal Mike e Marilyn Phillipps, que, depois de se reconciliarem,
Hello World!. PC / MS-DOS code segment para assume cs:code,ds:code org 0100h start: mov dx,offset message ;point to message mov ah,09h ;func# to printstring.
Optimização Numérica Modelação de problemas 1ª aula teórico-prática 11/Setembro/2006.
Computação Distribuída Serviços na Web XML, WSDL, SOAP, UDDI.
FEP 114 – Aula 3b. Objetivo: Determinar o intervalo de temperatura em que os calorímetros utilizados podem ser considerados ideais. Determinar o calor.
Administração 2°semestre - Aula 2 Classificação dos Sistemas de Informação.
DABPMaio 2009 Cálculo de uma poligonal Universidade do Algarve Instituto Superior de Engenharia Licenciatura em Engenharia Topográfica Disciplina de Topografia.
Luiz Carlos d´Oleron SJCP Java Avançado Conceitos de aplicações que acessam banco de dados.
RISC. Rational Behind RISC Few of the complex instructions were used –data movement – 45% –ALU ops – 25% –branching – 30% Cheaper memory VLSI technology.
11/11/05ELEC CISC (Complex Instruction Set Computer) Veeraraghavan Ramamurthy ELEC 6200 Computer Architecture and Design Fall 2005.
Algoritmos de Busca Heurísticos. Sumario Heurísticos –Best-first –Greedy best-first –A * –Algoritmos de Busca local –Hill-climbing Metaheuristicos –Simulated.
DSC/CCT/UFCG Profs.: José Eustáquio Rangel de Queiroz Roberto Medeiros de Faria José Eustáquio Rangel de Queiroz Roberto Medeiros de.
CADEIA DE SUPRIMENTOS DA SAÚDE E TI Gustavo Calil Yuri Maluf Lucas Santos Vitor Rosa Milena Alves Eduardo da Cunha.
Conceitos Fundamentais: da Moral à Bioética José Roberto Goldim.
Semáforos Plataforma Java 1.5 Juliano Cardoso Vacaro.
1 Exemplo: Velocidade de Migração num Fio de Cobre Então por que uma luz quando ligada acende instantaneamente? O campo eléctrico que impulsiona os electrões.
Arquitectura Tecnológica dos Sistemas de Informação Enterprise Architecture Validation Pedro da Silva - Nº João Jesus – Nº Nuno Dias – Nº
1 Tecnologia de Informação Conjunto de tecnologias com suporte tendencialmente em meios electrónicos como os sistemas computorizados, em que é processada,
Assembly Language Lecture 0: Introduction. Outline What is Assembly Language? Why learn Assembly Language? Grade Text Book.
High Performance Architectures
RISC and CISC. What is CISC? CISC is an acronym for Complex Instruction Set Computer and are chips that are easy to program and which make efficient use.
Computer Programming Languages HOW COMPUTERS WORK èCIRCUITS èBINARY DIGIT èBIT (0 OR 1) èBYTE - 8 BITS èASCII.
Introduction to Assembly II Abed Asi Extended System Programming Laboratory (ESPL) CS BGU Fall 2014/2015.
RISC / CISC Architecture by Derek Ng. Overview CISC Architecture RISC Architecture  Pipelining RISC vs CISC.
The Processor & its components. The CPU The brain. Performs all major calculations. Controls and manages the operations of other components of the computer.
Program Execution and ELF Files Extended System Programming Laboratory (ESPL) CS BGU Fall 2013/2014 Abed Asi.
OCR Computing OGAT Applications Generation.
Sistemas Operativos Multiprogramação; Multiplexação; Memória Física; Memória virtual; Trabalho/Job - Processo/Process/Task - Thread.
Sistemas Operativos Introdução. Sistema Operativo - definição De maneira menos informal podemos definir Sistema Operativo, como sendo o Software fundamental.
Sistemas Operativos Gestão de periféricos Varrimentos vs Interrupções Cache.
COMPONENTES BÁSICOS DE UM COMPUTADOR Disco-Rígido – Fonte - Motherboard - O disco rígido ou HD (Hard Disk) - Estrutura - Placa lógica (hard drive logic.
COMPONENTES BÁSICOS DE UM COMPUTADOR Processador – Memória – Bus/Barramento – Periféricos Carlos Pereira 2014/2015.
Arduino CHIP. Pins analógicos – (1 de 2) Recordar: Analog In - pin 0 ao 5 – analog to digital Recebe sinais analógicos e transforma-os em sinais digitais.
Arduino CHIP Hardware -Pins Digitais - Pins 0 ao 13Pins Digitais - Pins 0 ao 13 -Pins pulse modulation ~Pins Pins 0 e 1 –
COMPONENTES BÁSICOS DE UM COMPUTADOR Processador – Memória – Bus/Barramento – Periféricos 1.
COMPONENTES BÁSICOS DE UM COMPUTADOR Processador – Memória – Bus/Barramento – Periféricos.
Módulo 1 – Efeitos da radiação na água
Qual é a diferença entre fonética e fonologia?. Fonética Estuda a natureza física da produção e da percepção dos sons da fala humana. Preocupa-se com.
HCA - 10º ANO: A CULTURA DA ÁGORA ESCULTURA GREGA: ESTATUÁRIA PROF. PEDRO XAVIER ESAAA.
Determinou o endereço de A
UML StateChart Diagrams
Assembly language.
Alceu Ferreira Júnior R4 TRAUMA. INTRODUÇÃO Lesões do anel pélvico Fraturas sacrais - grande variabilidade Podem diferenciar-se em gravidade: simples.
Skynet Infocom A solução para sua Empresa Integrantes do Grupo Felipe Morales Igor Oliveira.
I MPORTÂNCIA DA E LETROMECÂNICA NA A GROPECUÁRIA O presente trabalho tem como objetivo propor uma crescente análise das rápidas e profundas inovações tecnológicas.
QUIMIOMETRIA I: COMO FAZER EXPERIMENTOS Prof. Dr. Clecio Dantas (UEMA) CAXIAS, 2015.
Liste todos os “símiles” usados pelos autores de LD para o Hyracotherium,indicando pelo menos uma página em que cada um deles é citado FOX TERRIERPÁG.
SEMINÁRIO DE PROCESSAMENTO DIGITAL DE SINAIS - FILTROS BUTTERWORTH E CHEBYSHEV GRUPO: EMANUEL GOMES SANTOS GUSTAVO ALVES MOREIRA.
Índice Interacção radiação - matéria na atmosfera Aveiro 2008.
O Mercado  Os Economistas estudam e analisam o funcionamento de uma série de instituições, no intuito de determinarem a forma como são usados os recursos.
Alunos(a): Thalynny Rabelo Thaynara Maia Wilson Carvalho INTRODUÇÃO À COMPUTAÇÃO GRÁFICA.
Placa Mãe Professor Roney sousa. O que é a Placa Mãe É a maior e mais importante placa de nosso computador, onde todos os demais componentes são ligados.
OLNEY JONER A estação de solda é uma ferramenta essencial em bancadas eletrônicas, onde sua utilização é destinada.
CPU Structure CPU must:
Chapter 4 Memory Management 4.1 Basic memory management 4.2 Swapping
Planejamento de Risco JACQUE TORRES, PMP. Objetivo Delimitar os riscos do Projeto e delimitar um plano de ação. Praticamente um exercício de futurologia.
PUC por um Semestre - PIUES Termoquímica Calor de reação.
Psicologia Grupo: Allyne Mendes Amanda Lima George Nascimento Maria Lira Mirian Alves Luaryanne.
Guija, Julho de 2019 Mabalane AP– Planificação Detalhada Sessão – – Passo 4 1.
CELULAR NA EDUCAÇÃO BÁSICA: RAZÕES PARA DIZER SIM Palloma Tayná Landim Gontijo - Letras TECNÓFILO.
VALOR AGREGADO Para agregar valor, deve-se ir além, inovar, ser criativo, ousar e correr o risco de ser imitado e de não poder cobrar mais pelo que faz.
Análise Combinatória Luciano Garim. Princípio Fundamental da Contagem Este princípio permite quantificar situações ou casos de um determinado evento.
Presentation transcript:

Arquitetura do SET de instruções Instruction SET CISC vs RISC What’s assembly as to do with it?

Assambley CODE section.text global _start ;must be declared for using gcc _start: ;tell linker entry point moveax,'3' sub eax, '0' mov ebx, '4' sub ebx, '0' add eax, ebx addeax, '0' mov [sum], eax movecx,msg movedx, len movebx,1 ;file descriptor (stdout) moveax,4 ;system call number (sys_write) int0x80 movecx,sum movedx, 1 movebx,1 ;file descriptor (stdout) moveax,4 ;system call number (sys_write) int0x80 ;call kernel moveax,1 ;system call number (sys_exit) int0x80 ;call kernel section.data msg db "The sum is:", 0xA,0xD len equ $ - msg segment.bss sum resb 1 Low-level - high-level programming language Hardware “CPU” Código Máquina / machine code A única linguagem entendida pelo computador Código Máquina / machine code A única linguagem entendida pelo computador Linguagem assambley ADD; SUB; JUMP Linguagem do Instruction SET – entendível para o programador Linguagem assambley ADD; SUB; JUMP Linguagem do Instruction SET – entendível para o programador Fortan; C; Pascal Uma linguagem entendida pelo programador – semelhante à linguagem corrente Fortan; C; Pascal Uma linguagem entendida pelo programador – semelhante à linguagem corrente Visual Básic Low-level programming language linguagens de baixo nível high-level programming language linguagem de programação de alto nível

Ponto prévio What’s assembly as to do with it? Existem dois tipos de linguagens de programação: Low-level programming language (linguagens de baixo nível) - é uma linguagem de programação que muito relacionada com o SET de instruções da máquina. É uma linguagem que está “perto do hardware”. Programas escritos em linguagens de baixo nível tendem a ser relativamente não-portáteis, principalmente por causa da estreita relação entre a linguagem e a arquitetura de hardware. Para esta programação pode ser usada: - linguagem máquina machine code - A única linguagem entendida pelo computador. (apenas entendível pelo computador, constituída por zeros e uns , não entendível para humanos) ou - linguagem assambley ou assembler que utiliza a já referida linguagem do Instruction SET (ADD; SUB; JUMP; etc.. ). Contudo, e apesar de ser uma linguagem de baixo nível é necessário traduzi-la para linguagem máquina, para que seja entendível pelo computador, para esse efeito é utilizado um tradutor ou assembler. ex: ADD; SUB; JUMP >>> ASEMBLER >>>>> Computador high-level programming language (linguagem de programação de alto nível) é uma linguagem de programação distante do código máquina em comparação com linguagens de programação de baixo nível. Podem ser usados elementos da linguagem natural tornando-se mais fácil aos humanos, alias foi com esse propósito que foi inventada. Exemplo C++ que utiliza caracteres como +*-/ sem recorrer a palavras do SET de instruções ou a código binário.

CISC vs RISC CISC RISC Complex Instruction Set Computer Reduced Instruction Set Computer Bag of instructions CISC (PC)RISC (Telemóvel) Instruções complexas 1 instrução = vários ciclos Instruções simples 1 instrução = 1 ciclo Qualquer instrução pode fazer referencia à memóriaApenas LOAD e STORE faz referência à memória Instruções executadas pelo Microcode (exige um tradutor (Assembler) de programação para código máquina) ex: HTML word Instruções executadas pelo hardware Ex: HTML notepad Baixa utilização de PepeliningAlta utilização de Pepelining Número reduzido de registosGrande número de registos Muitas instruções e modos de endereçamentoPoucas instruções e modos de endereçamento Programação simples – alto nível (Contudo a complexidade está no microcode)Compiladores complexos (programação complexa – baixo nível) Bag of instructions

CISC Microprocessadores CISC (Complex Instruction Set Computer) são fáceis de programar e permitem um uso eficiente de memória. Porquê? Porquê? - A filosofia CISC surgiu devido à necessidade de criar linguagens de programação mais próximas da linguagem humana. Noutros tempos as máquinas eram programadas única e exclusivamente em linguagem Assembly (linguagem máquina), e as memórias eram lentas e caras, o que justificou a filosofia CISC. Projetos de microprocessadores clássicos, tais como o Intel 80x86 e o Motorola 68K series, seguiram a filosofia CISC. Mudança recente Mudança recente - Mudanças recentes na tecnologia de software e hardware forçou uma reavaliação em termos de arquitetura. Assim, muitos processadores CISC mais modernos têm implementado alguns princípios RISC (Reduced Instruction Set Computer), tornando-se arquiteturas híbridas mais convenientes. Características Características: Instruções de tamanho variável de acordo com o modo de endereçamento Instruções que requerem múltiplos ciclos de clock para executar

RISC Microprocessadores RISC (Reduced Instruction Set Computer) são aqueles que utilizam um pequeno conjunto de instruções altamente otimizado. Os primeiros projetos RISC foram desenvolvidos nos anos 70 e 80 pelas universidades de Stanford e Berkeley, respectivamente. Algumas características RISC importantes são:  Execução em apenas um ciclo de clock. Esta característica é resultado da otimização de cada instrução, aliada a uma técnica chamada de Pipelining;  Pepelining é uma técnica que permite execução simultanea de partes de instruções, tornando o processo mais eficiente;  Grande número de registos para evitar uma quantidade elevada de interações com a memória. Pipelining – permite ao processador guardar num buffer instruções enquanto uma outra instrução está a ser executada na ALU. Memory buffer register (MBR) é um registo no processador, CPU, que armazena os dados que estão ser transferidos de e para a memória.