Página 1 de 1

Quando usar ou não usar o acumulador acc

MensagemEnviado: 30 Mai 2016 09:16
por kero_sabber
Bom dia a todos.
Sou iniciante em microcontroladores e tambem no uso do assembly para programa-los, portanto tenho algumas duvidas, de iniciantes mesmo, e ficaria grato se me fosse tiradas. Vejam o trecho de um programa que pequei de uma apostila :
asm code
org   00h
mov a,#0ffh
mov p2,a

inicio:
mov a,#07fh
mov p2,a
....
...


A duvida é a seguinte:
porque tenho que passar o valor antes para o acumulador e depois para o P2?
porque não posso passar direto o valor para o P2 ?

E se posso passar direto o valor para P2, quando devo usar o acumulador , como intermerdiario e quando devo passar direto os valores para os Ports?

Desde já agradeço

Re: Quando usar ou não usar o acumulador acc

MensagemEnviado: 30 Mai 2016 09:36
por andre_luis
kero_sabber escreveu:porque tenho que passar o valor antes para o acumulador e depois para o P2?


Baseado nas 2 primeiras instruções, em princípio até poderia usar simplesmente MOV. P2,#FFH
Mas o valor de A não é referenciado na linha 6 ?

Ou seja, se transferir direto, altera o funcionamento nessa linha.

Re: Quando usar ou não usar o acumulador acc

MensagemEnviado: 30 Mai 2016 16:09
por ze
numa olhadela rápida no d.s. (google p.ex. at89c51 instruction set no 2ª link) do 51 não vi referência a mov #a.

Também acho que pode escrever direto no port
mov p2,07fh ; o que está no endereço 07h vai pra p2

Dá uma conferida

Re: Quando usar ou não usar o acumulador acc

MensagemEnviado: 30 Mai 2016 16:54
por kero_sabber
ze escreveu:numa olhadela rápida no d.s. (google p.ex. at89c51 instruction set no 2ª link) do 51 não vi referência a mov #a.

Também acho que pode escrever direto no port
mov p2,07fh ; o que está no endereço 07h vai pra p2

Dá uma conferida


Olá,
Na verdade o #a,7fh foi erro meu
o correto é : a,#7fh
E já corrigi no texto

Re: Quando usar ou não usar o acumulador acc

MensagemEnviado: 05 Jun 2016 23:54
por Djalma Toledo
Sugestão para programar em Assembler

Na parte inferior da IDE copiar e colar o Set de Instruções do uC, obtidas do Datasheet por exemplo.

O Programa Assembler na parte superior da Ide. este e deverá terminar obrigatoriamente com End

Deste modo você tem a mão os Mnemônicos do uC.
E pode até usar o clássico Cntl C ==> Cntl V ( Copiar ==> Colar) na montagem do Programa.

Dj.