O documento apresenta um exemplo de programa em assembly para o simulador 8085. Ele define variáveis, inicializa dados na memória e realiza um laço para armazenar um valor em vários endereços de memória consecutivos utilizando instruções como MVI, LXI, MOV, INX e DCR.
Este documento descreve as instruções do microprocessador 8085. Está dividido em grupos funcionais: Transferência de dados, Aritméticos, Lógicos, Ramificação e Controle de Pilha/E/S. Cada grupo lista as instruções correspondentes e sua função. O documento também explica a convenção de nomenclatura das instruções e detalha o processo de montagem.
O documento descreve conceitos básicos de assembly para microcontroladores 8051, incluindo instruções, modos de endereçamento, estruturas de programação e exemplos de códigos.
O documento descreve o microcontrolador 68HC11 da Freescale, originalmente desenvolvido pela Motorola. Ele é um microcontrolador de 8 bits com arquitetura CISC que integra memória RAM, EPROM e I/O mapeada em memória. O documento detalha suas características como acumuladores, registradores, barramento de dados, comunicação serial, timers e conversor A/D.
O documento descreve as principais características do microprocessador 8085, incluindo sua arquitetura de blocos com unidades como controle de entrada/saída, temporização e controle, lógica aritmética e registradores como programa, acumulador, flags e pares de registradores.
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORESwillian324163
Este documento descreve a arquitetura e organização do computador SAP1, definindo cada um de seus componentes e módulos, como a unidade de controle, memória RAM, registradores e unidades lógicas. Também exemplifica programas simples em linguagem de máquina, mostrando como instruções em assembly são traduzidas para códigos binários.
Apresentação dos microntroladores, especialmente da linha pic16f, onde o alvo foi o PIC16f628a, que é bem simples de encontrar para comprar e de programar. Apesar de trabalhar com apenas 8 bits, é o robusto o suficiente para realizar automação que requeira PWM, comparação, USART; 16 I/O; e uma série de outras vantagens.
Este documento resume a família de microcontroladores PIC18xx da Microchip. Descreve as características principais como a arquitetura de 8 bits, diagrama de pinos do PIC18F2550, programação por ICSP ou programadores externos, configuração dos osciladores e memória incluindo registos especiais. Apresenta também exemplos de programação em assembly e C para escrever na memória e controlar saídas.
O documento discute aspectos fundamentais do conjunto de instruções de uma arquitetura de computador, incluindo: 1) O hardware executa instruções simples enquanto instruções complexas são decompostas em instruções simples; 2) O conjunto de instruções define as operações de um processador e permite ao programador escrever código de acordo; 3) A arquitetura do conjunto de instruções é a interface entre hardware e software.
Este documento descreve as instruções do microprocessador 8085. Está dividido em grupos funcionais: Transferência de dados, Aritméticos, Lógicos, Ramificação e Controle de Pilha/E/S. Cada grupo lista as instruções correspondentes e sua função. O documento também explica a convenção de nomenclatura das instruções e detalha o processo de montagem.
O documento descreve conceitos básicos de assembly para microcontroladores 8051, incluindo instruções, modos de endereçamento, estruturas de programação e exemplos de códigos.
O documento descreve o microcontrolador 68HC11 da Freescale, originalmente desenvolvido pela Motorola. Ele é um microcontrolador de 8 bits com arquitetura CISC que integra memória RAM, EPROM e I/O mapeada em memória. O documento detalha suas características como acumuladores, registradores, barramento de dados, comunicação serial, timers e conversor A/D.
O documento descreve as principais características do microprocessador 8085, incluindo sua arquitetura de blocos com unidades como controle de entrada/saída, temporização e controle, lógica aritmética e registradores como programa, acumulador, flags e pares de registradores.
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORESwillian324163
Este documento descreve a arquitetura e organização do computador SAP1, definindo cada um de seus componentes e módulos, como a unidade de controle, memória RAM, registradores e unidades lógicas. Também exemplifica programas simples em linguagem de máquina, mostrando como instruções em assembly são traduzidas para códigos binários.
Apresentação dos microntroladores, especialmente da linha pic16f, onde o alvo foi o PIC16f628a, que é bem simples de encontrar para comprar e de programar. Apesar de trabalhar com apenas 8 bits, é o robusto o suficiente para realizar automação que requeira PWM, comparação, USART; 16 I/O; e uma série de outras vantagens.
Este documento resume a família de microcontroladores PIC18xx da Microchip. Descreve as características principais como a arquitetura de 8 bits, diagrama de pinos do PIC18F2550, programação por ICSP ou programadores externos, configuração dos osciladores e memória incluindo registos especiais. Apresenta também exemplos de programação em assembly e C para escrever na memória e controlar saídas.
O documento discute aspectos fundamentais do conjunto de instruções de uma arquitetura de computador, incluindo: 1) O hardware executa instruções simples enquanto instruções complexas são decompostas em instruções simples; 2) O conjunto de instruções define as operações de um processador e permite ao programador escrever código de acordo; 3) A arquitetura do conjunto de instruções é a interface entre hardware e software.
O documento descreve conceitos básicos sobre o microcontrolador 8051 e sua programação em assembly, incluindo: (1) sua arquitetura interna com CPU, memória e periféricos de E/S; (2) sua memória e registradores; e (3) instruções básicas de assembly como transferência de dados e operações lógicas. O texto também fornece um exemplo inicial de programação assembly para implementar uma porta NOR com o 8051.
O documento fornece uma introdução sobre a linguagem de montagem Assembly. Em 3 frases:
A linguagem Assembly é uma linguagem de programação de baixo nível utilizada para programar diretamente a unidade central de processamento. Ela é compilada por um assembler para gerar código de máquina executável. O documento explica conceitos-chave como registradores, instruções, números binários e interrupções que são importantes para entender a arquitetura do processador e programar em Assembly.
O documento fornece uma introdução sobre a linguagem de montagem Assembly. Em 3 frases:
A linguagem Assembly é uma linguagem de programação de baixo nível utilizada para programar diretamente a unidade central de processamento. Ela é compilada em um programa objeto pelo assembler e permite maior controle sobre as funções do computador através do uso de registradores, instruções mnemônicas e flags de estado. A linguagem depende do hardware e não é portável entre arquiteturas de processadores diferentes.
Slides do treinamento Altera - Introdução a FPGAandrecasp
O documento apresenta uma introdução sobre o treinamento de FPGA ministrado por André Castelan Prado. Resume as informações sobre o instrutor, a empresa Macnica DHW e a evolução da complexidade dos sistemas digitais ao longo do tempo, necessitando de novas tecnologias como FPGAs.
O documento descreve as características e elementos de um conjunto de instruções de computadores. Apresenta os componentes básicos de uma instrução de máquina, como código de operação, endereços dos operandos e da próxima instrução. Discute também tipos de instruções, formatos, número de endereços, projeto do conjunto de instruções e tipos de operações suportadas.
Pbl assembly avr como atmega328 p - rev.1andrademanoel
1. O documento apresenta um estudo sobre programação em linguagem Assembly para microcontroladores AVR usando o Atmel Studio. São mostrados algoritmos e programas em Assembly para realizar operações matemáticas básicas como soma, decremento e comparações.
2. São apresentadas instruções Assembly como LDI, ADD, DEC, BRNE e outras. Também são explicados conceitos como flags, registradores e pilha.
3. São fornecidos exemplos de código Assembly com passo a passo de simulação para verificar o funcionamento dos algoritmos propostos.
O documento descreve as características do microcontrolador PIC16F628a, incluindo que possui 18 pinos, 35 instruções, memória de 2048 words de programa e 224 bytes de RAM. Apresenta também detalhes sobre sua arquitetura Harvard e conjunto de instruções RISC.
O documento descreve a arquitetura do processador ARM Cortex-A8, incluindo suas características principais como registradores, modos de operação, conjunto de instruções, pipeline, memória cache e gerenciamento de memória.
O documento fornece uma introdução sobre registradores em sistemas x86, descrevendo os principais registradores de uso geral e especiais, como EAX, EBX, EIP e EFLAGS. Explica a organização dos registradores e diferenças entre as sintaxes AT&T e Intel.
Neste webinar serão abordadas topologias e aplicações nas quais o uso de FPGA é vantajoso em relação ao uso de processadores. Serão apresentadas comparações de designs equivalentes em FPGA e em software, apontando os cenários em que o uso de cada uma das tecnologias tem melhor performance.
Este documento fornece uma introdução aos autómatos programáveis, incluindo:
1) Uma breve apresentação do curso e dos objetivos de aprendizagem;
2) Uma visão geral dos principais componentes de hardware e software de um autómato programável;
3) Uma explicação inicial sobre como programar autómatos usando instruções lógicas básicas.
O documento descreve o projeto Robotec, uma ferramenta computacional para controlar um braço robótico através de algoritmos baseados em pseudocódigo Portugol. O sistema permite ensinar lógica de programação, álgebra vetorial e cinemática básica de forma interativa. O documento detalha os requisitos, módulos, análises lexica, sintática e semântica necessárias para interpretar os comandos e movimentar o braço robótico corretamente.
Este documento discute o uso de rádio definido por software (SDR) usando Matlab e Simulink. Ele introduz SDR e como a plataforma Matlab permite modelar, simular e implementar algoritmos de comunicação sem fio. O fluxo de trabalho começa com a modelagem e simulação, passa para a geração e teste de código para FPGA e microcontrolador, e termina com a implementação no ambiente SDR de produção.
O documento descreve as principais funções lógicas utilizadas em circuitos digitais e controladores lógicos programáveis (CLPs), incluindo funções NOT, AND, OR, NAND, NOR, XOR e XNOR. Também fornece detalhes sobre as partes principais de um CLP e seu ciclo de varredura.
Este documento fornece uma introdução ao curso "ControlLogix Motion usando o RSLogix 5000". O curso ensinará como configurar um sistema multi-eixo na plataforma ControlLogix 5572, incluindo hardware, configuração de eixos, programação de movimento e exemplos de aplicação.
O documento descreve os principais componentes do modelo de von Neumann, incluindo a memória, unidade lógica e aritmética, unidade de controle, registradores e ciclo de instrução. O modelo de von Neumann é baseado em uma arquitetura centralizada com memória compartilhada entre a CPU e dispositivos de entrada e saída.
O documento discute microcontroladores PIC e programação em linguagem C. Apresenta tópicos como estrutura interna dos microcontroladores PIC, declaração de variáveis, operadores, configuração de periféricos como ADCs e PWM, uso de interrupções e memória EEPROM. Inclui também exemplos de código C para controlar dispositivos com PIC.
O documento discute microcontroladores PIC e programação em linguagem C. Apresenta tópicos como estrutura interna dos microcontroladores PIC, declaração de variáveis, operadores, entrada e saída digital, conversor AD, interrupções e uso da memória EEPROM.
AE03 - ESTUDO CONTEMPORÂNEO E TRANSVERSAL INDÚSTRIA E TRANSFORMAÇÃO DIGITAL ...Consultoria Acadêmica
“O processo de inovação envolve a geração de ideias para desenvolver projetos que podem ser testados e implementados na empresa, nesse sentido, uma empresa pode escolher entre inovação aberta ou inovação fechada” (Carvalho, 2024, p.17).
CARVALHO, Maria Fernanda Francelin. Estudo contemporâneo e transversal: indústria e transformação digital. Florianópolis, SC: Arqué, 2024.
Com base no exposto e nos conteúdos estudados na disciplina, analise as afirmativas a seguir:
I - A inovação aberta envolve a colaboração com outras empresas ou parceiros externos para impulsionar ainovação.
II – A inovação aberta é o modelo tradicional, em que a empresa conduz todo o processo internamente,desde pesquisa e desenvolvimento até a comercialização do produto.
III – A inovação fechada é realizada inteiramente com recursos internos da empresa, garantindo o sigilo dasinformações e conhecimento exclusivo para uso interno.
IV – O processo que envolve a colaboração com profissionais de outras empresas, reunindo diversasperspectivas e conhecimentos, trata-se de inovação fechada.
É correto o que se afirma em:
ALTERNATIVAS
I e II, apenas.
I e III, apenas.
I, III e IV, apenas.
II, III e IV, apenas.
I, II, III e IV.
Entre em contato conosco
54 99956-3050
O documento descreve conceitos básicos sobre o microcontrolador 8051 e sua programação em assembly, incluindo: (1) sua arquitetura interna com CPU, memória e periféricos de E/S; (2) sua memória e registradores; e (3) instruções básicas de assembly como transferência de dados e operações lógicas. O texto também fornece um exemplo inicial de programação assembly para implementar uma porta NOR com o 8051.
O documento fornece uma introdução sobre a linguagem de montagem Assembly. Em 3 frases:
A linguagem Assembly é uma linguagem de programação de baixo nível utilizada para programar diretamente a unidade central de processamento. Ela é compilada por um assembler para gerar código de máquina executável. O documento explica conceitos-chave como registradores, instruções, números binários e interrupções que são importantes para entender a arquitetura do processador e programar em Assembly.
O documento fornece uma introdução sobre a linguagem de montagem Assembly. Em 3 frases:
A linguagem Assembly é uma linguagem de programação de baixo nível utilizada para programar diretamente a unidade central de processamento. Ela é compilada em um programa objeto pelo assembler e permite maior controle sobre as funções do computador através do uso de registradores, instruções mnemônicas e flags de estado. A linguagem depende do hardware e não é portável entre arquiteturas de processadores diferentes.
Slides do treinamento Altera - Introdução a FPGAandrecasp
O documento apresenta uma introdução sobre o treinamento de FPGA ministrado por André Castelan Prado. Resume as informações sobre o instrutor, a empresa Macnica DHW e a evolução da complexidade dos sistemas digitais ao longo do tempo, necessitando de novas tecnologias como FPGAs.
O documento descreve as características e elementos de um conjunto de instruções de computadores. Apresenta os componentes básicos de uma instrução de máquina, como código de operação, endereços dos operandos e da próxima instrução. Discute também tipos de instruções, formatos, número de endereços, projeto do conjunto de instruções e tipos de operações suportadas.
Pbl assembly avr como atmega328 p - rev.1andrademanoel
1. O documento apresenta um estudo sobre programação em linguagem Assembly para microcontroladores AVR usando o Atmel Studio. São mostrados algoritmos e programas em Assembly para realizar operações matemáticas básicas como soma, decremento e comparações.
2. São apresentadas instruções Assembly como LDI, ADD, DEC, BRNE e outras. Também são explicados conceitos como flags, registradores e pilha.
3. São fornecidos exemplos de código Assembly com passo a passo de simulação para verificar o funcionamento dos algoritmos propostos.
O documento descreve as características do microcontrolador PIC16F628a, incluindo que possui 18 pinos, 35 instruções, memória de 2048 words de programa e 224 bytes de RAM. Apresenta também detalhes sobre sua arquitetura Harvard e conjunto de instruções RISC.
O documento descreve a arquitetura do processador ARM Cortex-A8, incluindo suas características principais como registradores, modos de operação, conjunto de instruções, pipeline, memória cache e gerenciamento de memória.
O documento fornece uma introdução sobre registradores em sistemas x86, descrevendo os principais registradores de uso geral e especiais, como EAX, EBX, EIP e EFLAGS. Explica a organização dos registradores e diferenças entre as sintaxes AT&T e Intel.
Neste webinar serão abordadas topologias e aplicações nas quais o uso de FPGA é vantajoso em relação ao uso de processadores. Serão apresentadas comparações de designs equivalentes em FPGA e em software, apontando os cenários em que o uso de cada uma das tecnologias tem melhor performance.
Este documento fornece uma introdução aos autómatos programáveis, incluindo:
1) Uma breve apresentação do curso e dos objetivos de aprendizagem;
2) Uma visão geral dos principais componentes de hardware e software de um autómato programável;
3) Uma explicação inicial sobre como programar autómatos usando instruções lógicas básicas.
O documento descreve o projeto Robotec, uma ferramenta computacional para controlar um braço robótico através de algoritmos baseados em pseudocódigo Portugol. O sistema permite ensinar lógica de programação, álgebra vetorial e cinemática básica de forma interativa. O documento detalha os requisitos, módulos, análises lexica, sintática e semântica necessárias para interpretar os comandos e movimentar o braço robótico corretamente.
Este documento discute o uso de rádio definido por software (SDR) usando Matlab e Simulink. Ele introduz SDR e como a plataforma Matlab permite modelar, simular e implementar algoritmos de comunicação sem fio. O fluxo de trabalho começa com a modelagem e simulação, passa para a geração e teste de código para FPGA e microcontrolador, e termina com a implementação no ambiente SDR de produção.
O documento descreve as principais funções lógicas utilizadas em circuitos digitais e controladores lógicos programáveis (CLPs), incluindo funções NOT, AND, OR, NAND, NOR, XOR e XNOR. Também fornece detalhes sobre as partes principais de um CLP e seu ciclo de varredura.
Este documento fornece uma introdução ao curso "ControlLogix Motion usando o RSLogix 5000". O curso ensinará como configurar um sistema multi-eixo na plataforma ControlLogix 5572, incluindo hardware, configuração de eixos, programação de movimento e exemplos de aplicação.
O documento descreve os principais componentes do modelo de von Neumann, incluindo a memória, unidade lógica e aritmética, unidade de controle, registradores e ciclo de instrução. O modelo de von Neumann é baseado em uma arquitetura centralizada com memória compartilhada entre a CPU e dispositivos de entrada e saída.
O documento discute microcontroladores PIC e programação em linguagem C. Apresenta tópicos como estrutura interna dos microcontroladores PIC, declaração de variáveis, operadores, configuração de periféricos como ADCs e PWM, uso de interrupções e memória EEPROM. Inclui também exemplos de código C para controlar dispositivos com PIC.
O documento discute microcontroladores PIC e programação em linguagem C. Apresenta tópicos como estrutura interna dos microcontroladores PIC, declaração de variáveis, operadores, entrada e saída digital, conversor AD, interrupções e uso da memória EEPROM.
Semelhante a -Aula 4 - Programacao do 8085.ppt (20)
AE03 - ESTUDO CONTEMPORÂNEO E TRANSVERSAL INDÚSTRIA E TRANSFORMAÇÃO DIGITAL ...Consultoria Acadêmica
“O processo de inovação envolve a geração de ideias para desenvolver projetos que podem ser testados e implementados na empresa, nesse sentido, uma empresa pode escolher entre inovação aberta ou inovação fechada” (Carvalho, 2024, p.17).
CARVALHO, Maria Fernanda Francelin. Estudo contemporâneo e transversal: indústria e transformação digital. Florianópolis, SC: Arqué, 2024.
Com base no exposto e nos conteúdos estudados na disciplina, analise as afirmativas a seguir:
I - A inovação aberta envolve a colaboração com outras empresas ou parceiros externos para impulsionar ainovação.
II – A inovação aberta é o modelo tradicional, em que a empresa conduz todo o processo internamente,desde pesquisa e desenvolvimento até a comercialização do produto.
III – A inovação fechada é realizada inteiramente com recursos internos da empresa, garantindo o sigilo dasinformações e conhecimento exclusivo para uso interno.
IV – O processo que envolve a colaboração com profissionais de outras empresas, reunindo diversasperspectivas e conhecimentos, trata-se de inovação fechada.
É correto o que se afirma em:
ALTERNATIVAS
I e II, apenas.
I e III, apenas.
I, III e IV, apenas.
II, III e IV, apenas.
I, II, III e IV.
Entre em contato conosco
54 99956-3050
Os nanomateriais são materiais com dimensões na escala nanométrica, apresentando propriedades únicas devido ao seu tamanho reduzido. Eles são amplamente explorados em áreas como eletrônica, medicina e energia, promovendo avanços tecnológicos e aplicações inovadoras.
Sobre os nanomateriais, analise as afirmativas a seguir:
-6
I. Os nanomateriais são aqueles que estão na escala manométrica, ou seja, 10 do metro.
II. O Fumo negro é um exemplo de nanomaterial.
III. Os nanotubos de carbono e o grafeno são exemplos de nanomateriais, e possuem apenas carbono emsua composição.
IV. O fulereno é um exemplo de nanomaterial que possuí carbono e silício em sua composição.
É correto o que se afirma em:
ALTERNATIVAS
I e II, apenas.
I, II e III, apenas.
I, II e IV, apenas.
II, III e IV, apenas.
I, II, III e IV.
Entre em contato conosco
54 99956-3050
O presente trabalho consiste em realizar um estudo de caso de um transportador horizontal contínuo com correia plana utilizado em uma empresa do ramo alimentício, a generalização é feita em reserva do setor, condições técnicas e culturais da organização
AE03 - ESTUDO CONTEMPORÂNEO E TRANSVERSAL ENGENHARIA DA SUSTENTABILIDADE UNIC...Consultoria Acadêmica
Os termos "sustentabilidade" e "desenvolvimento sustentável" só ganharam repercussão mundial com a realização da Conferência das Nações Unidas sobre o Meio Ambiente e o Desenvolvimento (CNUMAD), conhecida como Rio 92. O encontro reuniu 179 representantes de países e estabeleceu de vez a pauta ambiental no cenário mundial. Outra mudança de paradigma foi a responsabilidade que os países desenvolvidos têm para um planeta mais sustentável, como planos de redução da emissão de poluentes e investimento de recursos para que os países pobres degradem menos. Atualmente, os termos
"sustentabilidade" e "desenvolvimento sustentável" fazem parte da agenda e do compromisso de todos os países e organizações que pensam no futuro e estão preocupados com a preservação da vida dos seres vivos.
Elaborado pelo professor, 2023.
Diante do contexto apresentado, assinale a alternativa correta sobre a definição de desenvolvimento sustentável:
ALTERNATIVAS
Desenvolvimento sustentável é o desenvolvimento que não esgota os recursos para o futuro.
Desenvolvimento sustantável é o desenvolvimento que supre as necessidades momentâneas das pessoas.
Desenvolvimento sustentável é o desenvolvimento incapaz de garantir o atendimento das necessidades da geração futura.
Desenvolvimento sustentável é um modelo de desenvolvimento econômico, social e político que esteja contraposto ao meio ambiente.
Desenvolvimento sustentável é o desenvolvimento capaz de suprir as necessidades da geração anterior, comprometendo a capacidade de atender às necessidades das futuras gerações.
Entre em contato conosco
54 99956-3050
Introdução ao GNSS Sistema Global de PosicionamentoGeraldoGouveia2
Este arquivo descreve sobre o GNSS - Globas NavigationSatellite System falando sobre os sistemas de satélites globais e explicando suas características
Se você possui smartphone há mais de 10 anos, talvez não tenha percebido que, no início da onda da
instalação de aplicativos para celulares, quando era instalado um novo aplicativo, ele não perguntava se
podia ter acesso às suas fotos, e-mails, lista de contatos, localização, informações de outros aplicativos
instalados, etc. Isso não significa que agora todos pedem autorização de tudo, mas percebe-se que os
próprios sistemas operacionais (atualmente conhecidos como Android da Google ou IOS da Apple) têm
aumentado a camada de segurança quando algum aplicativo tenta acessar os seus dados, abrindo uma
janela e solicitando sua autorização.
CASTRO, Sílvio. Tecnologia. Formação Sociocultural e Ética II. Unicesumar: Maringá, 2024.
Considerando o exposto, analise as asserções a seguir e assinale a que descreve corretamente.
ALTERNATIVAS
I, apenas.
I e III, apenas.
II e IV, apenas.
II, III e IV, apenas.
I, II, III e IV.
Entre em contato conosco
54 99956-3050
AE02 - FORMAÇÃO SOCIOCULTURAL E ÉTICA II UNICESUMAR 52/2024
-Aula 4 - Programacao do 8085.ppt
1. Introdução a Linguagem de Programação
8085
Prof. Dr. Remy Eskinazi
DEE – UPE – Escola Politécnica / CEFET-PE
remy.eskinazi@gmail.com
2. Introdução a Linguagem de Programação
• Cada µp tem suas próprias palavras (Opcodes ), significados e linguagem
• Opcodes length – nº de bits que o µp reconhece e processa de cada vez
• Opcodes são formados pelas várias combinações desses bits
• 8085: linguagem de até 256 opcodes (28)
• Projetista da CPU cria instruções:
• seleciona combinações de padrões de bits
• Atribui um significado especifico para cada combinação usando decodificadores
• Cada µp tem seu próprio conjunto de instruções
• Programa em assembly para um microprocessador não é transferível (executável) para outro
de arquitetura diferente.
• Instruções são compostas por uma ou mais palavras
• Conjunto de instruções: linguagem de máquina
• O µp determina:
• A linguagem de máquina e
• Operações do sistema
3. Linguagem Assembly do 8085
• 246 padrões de bits
• 74 instruções (Instruction set)
• Formatos da instrução
• Binário (difícil para se programar )
• Hexadecimal (difícil para se programar )
• Assembly (menos difícil )
• C (Fácil)
• Comprimento da Instrução no 8085
– Até 3 bytes
• Opcode (1º byte) RLC – rotaciona acumulador (1 byte)
• Operando (2º , 3º byte) CPI – compara valor com acumulador (2 bytes)
LXI B, dado16 – (3 bytes)
• Declaração em assembly pode ter 4 campos
Label Opcode Operando Comentário
START: LXI SP, 20FFH ;Inicializa stack pointer
Binário: 00111100
Hexadecimal: 3CH
Mnemônico: INR A
A A + 1
Binário: 10000000
Hexadecimal: 80H
Mnemônico: ADD B
B A + B
4. Formato da Instrução
• Identificação de registradores
Código Registradores Código Par de Registradores
000 B 00 BC
001 C 01 DE
010 D 10 HL
011 E 11 SP
100 H
101 L
111 A
110 Reservado
Instrução Código da Instrução
1. RLC: Rotaciona os bits de A à 00000111 = 07H (RLC)
esquerda de uma posição (opcode: 8bits)
2. ADD Reg: Adiciona o conteúdo de 10000 SSS (opcode: 5bits)
um registrador ao A (operando: 3bits)
3. ADD B 10000 000 = 80H
4. MOV C,A 01 001 111 = 4F (opcode: 01)
DDD SSS (operando: 001 111)
D7 D6 D5 D4 D3 D2 D1 D0
Opcode DDD SSS
5. Notações
• Notações usadas na descrição de instruções
• R um registrador de 8 bits (A,B,C,D,E,H,L)
• M registrador de Memória (HL)
• Rs registrador fonte
• Rd registrador destino (A,B,C,D,E,H,L)
• Rp par de registradores (BC, DE, HL, SP)
6. Assembly x Alto Nível
• Linguagem de máquina e linguagem
Assembly
• low-level
• Assembly x Linguagens de alto nível
• Programas compactos
• Requerem menos memória
• Maior eficiência
• Aplicações de controle: programas pequenos e compactos
• Alto nível (C, C++, Processing): Maior portabilidade
7. Ferramentas para Desenvolvimento
de Programas em Assembly
– Assembler/Compilador
• programa que faz a tradução para linguagem de máquina
– Assembly / C Código binário executável
– Linker
• Liga os vários arquivos objeto, gerando um único executável
– Cada µp tem seu próprio Assembler / Compilador
8. Montagem de Programa
8
– ASM file – arquivo fonte
– OBJ file – arquivo binário intermediário (Utilizado como entrada no Linker)
– HEX file – arquivo executável utilizado para programar o Microcontrolador
– LST file – arquivo com proposta de documentação:
» locações de memória, mnemônicos, comentários
- Obs. No simulador 8085 o arquivo de execução é o OBJ (*.o)
Programa
Fonte
Asm / C
(código fonte)
Programa em
Código binário
(código objeto)
montador
Programa em
Código binário
executável
(HEX file)
Linker
Compilador
11. Instruções 8085 – Mover Dados
• Movimenta (Copia) dados entre registradores e memória
• MOV R1,R2, M ;Move
• MVI Ri, <dado8> ;Move Immediate
• LDA <end16> ;Load Accumulator Directly from Memory
• STA <end16> ;Store Accumulator Directly in Memory
• LHLD <end16> ;Load H & L Registers Directly from Memory
• SHLD <end16> ;Store H & L Registers Directly in Memory
12. Instruções 8085 – Mover Dados
• An 'X' in the name of a data transfer instruction implies that it
deals with a register pair (16-bits);
• LXI Load Register Pair with Immediate data
• LDAX Load Accumulator from Address in Register Pair
• STAX Store Accumulator in Address in Register Pair
• XCHG Exchange H & L with D & E
• XTHL Exchange Top of Stack with H & L
13. Instruções 8085 – Aritmética
• Add, Subtract, Increment / Decrement data in registers or memory.
• ADD Add to Accumulator
• ADI Add Immediate Data to Accumulator
• ADC Add to Accumulator Using Carry Flag
• ACI Add Immediate data to Accumulator Using Carry
• SUB Subtract from Accumulator
• SUI Subtract Immediate Data from Accumulator
• SBB Subtract from Accumulator Using Borrow (Carry) Flag
• SBI Subtract Immediate from Accumulator
Using Borrow (Carry) Flag
• INR Increment Specified Byte by One
• DCR Decrement Specified Byte by One
• INX Increment Register Pair by One
• DCX Decrement Register Pair by One
• DAD Double Register Add; Add Content of Register Pair to H & L
Register Pair
14. Instruções 8085 – Lógica
• This group performs logical (Boolean) operations on data in registers
and memory and on condition flags.
• These instructions enable you to set specific bits in the accumulator
ON or OFF.
• ANA Logical AND with Accumulator
• ANI Logical AND with Accumulator Using Immediate
Data
• ORA Logical OR with Accumulator
• OR Logical OR with Accumulator Using Immediate
Data
• XRA Exclusive Logical OR with Accumulator
• XRI Exclusive OR Using Immediate Data
15. Instruções 8085 – Lógica
• The Compare instructions compare the content of an 8-bit value with
the contents of the accumulator;
• CMP Compare
• CPI Compare Using Immediate Data
• The rotate instructions shift the contents of the accumulator one bit
position to the left or right:
• RLC Rotate Accumulator Left
• RRC Rotate Accumulator Right
• RAL Rotate Left Through Carry
• RAR Rotate Right Through Carry
• Complement and carry flag instructions:
• CMA Complement Accumulator
• CMC Complement Carry Flag
• STC Set Carry Flag
16. Instruções 8085 – Lógica
• Unconditional branching
•
– JMP <addr16> Jump
– CALL <add16r> Call
– RET Return
• Conditional branching
– JNZ <addr16> Not Zero (Z = 0)
– JZ <addr16> Zero (Z = 1)
– JNC <addr16> No Carry (C = 0)
– JC <addr16> Carry (C = 1)
– JPO <addr16> Parity Odd (P = 0)
– JPE <addr16> Parity Even (P = 1)
– JP <add16r> Plus (S = 0)
– JM <addr16> Minus (S = 1)
17. Instruções 8085 – Operações com a pilha
• PUSH Push Two bytes of Data onto the Stack
• POP Pop Two Bytes of Data off the Stack
• XTHL Exchange Top of Stack with H & L
• SPHL Move content of H & L to Stack Pointer
18. Instruções 8085 – Operações de E/S
• IN <addr8> Input Operation
• OUT <addr8> Output Operation
19. Instruções 8085 – Operações de Controle
• EI Enable Interrupt System
• DI Disable Interrupt System
• HLT Halt
• NOP No Operation
39. Exemplo Para simulador 8085 -ES
; Diretivas do compilador 8085:
; a diretiva .define associa um valor a um nome a ser usado no programa
; a diretiva .data estabelece valores iniciais em posições da memória. DB significa “Defina Byte”
; a diretiva .org define um endereço inicial para o código que vem a seguir. ORG significa “origin”
; define variáveis
.define ;
BUFFER 2050H ; nomeia 2050H com nome BUFFER
DADO 10101010b ; byte para colocar no buffer
COUNT 32 ; byte contador
;Inicializa dados em 2100h
.data 2100h
V1: DB 200 ; variável global de 1 byte = 200
V2: DB 7,2,5 ; variável global de 3 bytes
;início do programa
.ORG 0000H ; inicio
MVI A, DADO ; inicializa A com valor
LXI H, BUFFER ; inicializa ponteiro de memória
MVI B, COUNT ; inicializa contador de laço
LOOP: MOV M, A ; armazena DATA na memória
INX H ; incrementa ponteiro BUFFER
DCR B ; decrementa contador
JNZ LOOP ; se não zero (Z=0), repita para o próximo byte
HLT