Binario en el asm de los PIC

Foro dedicado a la emulación de sistemas clásicos en el PC o en otros sistemas.
REHome
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 145
Registrado: 19 Abr 2013, 22:01
Sistema Favorito: Spectrum +2
primer_sistema: Spectrum +2
Gracias dadas: 3 veces
Gracias recibidas: 2 veces

Binario en el asm de los PIC

Mensajepor REHome » 25 Jul 2017, 22:12

Hola:

Quiero saber si existe una tabla o lista de las intrucciones del asm del PIC16F84A por nombrar alguno, en código binario. Que se muestre en asm y al lado en binario.

Mi idea es hacer una máquina tipo de las de antes, programando solo en binario con interruptores y Leds.

Para que se hagan una idea. Imitar algo parecido a esto aquí abajo como en la época de los 70.

Imagen

[url="https://es.wikipedia.org/wiki/Altair_8800"]Altari 8800 Computer[/url].

Por lo que he visto, controla dirección de memoria del multiplexor, guarda datos en la RAM, lo pasa en la EEPROM para que no se pierda. Todo en binario como antaño, hasta tiene contadores. Todo esto sin usar ningún microcontrolador por medio. Hoy en día para que cueste más barato, con un microcontrolador basta. Mi idea es añadir instrucciones del asm del PIC16F84A, puede ser el PIC16F628A o el PIC16F88, da igual, hay que centrarse en alguno. Coger sus intrucciones, por ejemplo movf, saber su binario para introducirlo en la máquina con sus interruptores.

https://www.youtube.com/watch?v=TDGYIUZMbuY

[quote=Scooter;1177091]Pero para eso necesitas uno que funcione en modo microprocesador. Si la memoria de ejecución solo puede ser interna, programar eso son interruptores puede ser una locura...

Enviado desde mi 5056D mediante Tapatalk[/quote]

He hehco una cerradura codificada, con una ALU, memoria RAM, lo más caro de todo, multiplexor, inversor, contador, 555, tenía qu ehacerlo todo en la protoboard. La protoboard lo tengo montado por ahí desde hace unos 20 años, ajjaj aajj ja. Como tengo experiencia en ese aspecto, me atrevo. En fin de cuentas, lo que quiero es un reto persona y curiosidad.

Con interruptores es más cómodo, ocura fue coger cables en la protoboard colocándolo en 5 V para luego dejarlo en 0V así con las direcciones del multiplexor. Siempre te te soltaba un cable y se rompía sin saberlo, una locura que nos entró a todos.

[quote=Dr. Zoidberg;1177102]Y asumiendo que se pueda hacer....lo vas a tirar a la mie@#€%&? !!
En la universidad teniamos que escribir en asm en un papel y al lado traducirlo a binario representado en hexadecimal. Y esos hexa los subiamos a la memoria del 8080 o del SCMP....prefiero olvidar el aborto que era eso...y asi rendi el examen final de Sistemas Digitales 2 en 1987.....y LPMQLP[/quote]

Lo guardaé como paño en oro, haré su cajita y un LCD 20x4. Para ver cuando introduzco en pantalla los comando en binario y se muestra en el display sus comandos. Viendo en Internet, los EE.UU. Lo están coleccionando, ejjejejeje, también en Alemania incluso hasta rusos como museos y probándolo, mirar por youtube.

@fdesergio Los alumnos que hay, la mayoría son peresozos, los curiosos y que realmente deseen aprender más se complican la vida, eso son los que van hacia delante pero son en minoría.

Ya verás que curioso, a la vez tedioso cuando lo acabe y lo monte en su cajita. No es lo mismo contarlo que verlo.

------------------------------------------------------------------------------------------------------------

Mi idea es, saber de una vez por todas, las instrucciones del asm de un PIC.
Instrucciones del PIC16F84A.
Set de instrucciones Microcontrolador PIC.
https://learn.mikroe.com/ebooks/microco ... gramacion/

Preferiblemente prefiero en el fondo centrarme en los PIC16F88/886/887. Son los más modernos comparado con los PIC16F84A/876A/877A.

¿Hay algunalista que me diga estas instrucciones de asm a binario?

Tenemos este ejmplo en asm, no en binario.

Código: Seleccionar todo

; Por el Puerto B se obtiene el dato de las cinco líneas del Puerto A, al que está conectado
; un array de interruptores, sumándole el valor de una constante, por ejemplo 74.
; Es decir: (PORTB)=(PORTA)+CONSTANTE

; ZONA DE DATOS *********************************************************************

    LIST       P=16F84A            ; Procesador utilizado.
    INCLUDE  <P16F84A.INC>        ; Definición de algunos operandos utilizados.
    __CONFIG   _CP_OFF &  _WDT_OFF & _PWRTE_ON & _XT_OSC

CONSTANTE  EQU    d'74'            ; En sistema decimal se pone así.

; ZONA DE CÓDIGOS *******************************************************************

    ORG     0                    ; El programa comienza en la dirección 0.
Inicio
    bsf        STATUS,RP0            ; Pone a 1 el bit 5 del STATUS. Acceso al Banco 1.
    clrf    TRISB                ; Las líneas del Puerto B configuradas como salidas.
    movlw    b'00011111'            ; Las 5 líneas del Puerto A configuradas como entradas.
    movwf    TRISA
    bcf        STATUS,RP0            ; Pone a 0 el bit 5 de STATUS. Acceso al Banco 0.
Principal
    movf     PORTA,W                ; Carga el registro de datos del Puerto A en (W).
    addlw    CONSTANTE            ; (W) = (PORTA) + CONSTANTE.
    movwf    PORTB                ; El contenido de W se deposita en el puerto de salida.
    goto     Principal            ; Crea un bucle cerrado e infinito.

    END                            ; Fin del programa.
Tenemos la instrucción en hexadecimal, por ejemplo: movlw

¿Cuál es su equivalente en binario?

Ahí está la cuestió, por ahora quiero una lista sobre ello y no se si existe dicha lista, no se que poner para buscar, no lo encuentro.

Por suerte hoy en día se usan simuladores y emuladores como el Proteus. Ahorras dinero., te aseguras para dar el paso en la protoboard directamente.

Mi idea crear un frontal físico, por ahora lo haré en el Proteus, programar en binario, ajjajajaja, no me voy a gasta componentes y luego fracase.

https://www.youtube.com/watch?v=EV1ki6LiEmg

Tenía intención de hacerlo solo con los componentes que he nombrado arriba, es muy caro hacerlo así y hay que hacer pruebas por todas partes. Por eso pensé en una segunda posibilidad pero le quita atractivo, usar Arduino o Raspberry Pi para ahorrar costes, fabricación diseño, tiempo y dierno.

Cuando programe algo, se verá las intrucciones en el LCD 20x4. Por ejemplo, si pongo:

10101110

En el LCD o monitor o en un TV se muestre

movlw

Así sucesivamente.

Mi idea es crear una lista ejemplo.asm como indica el ejemplo de arriba de asm del PIC16F84A. Si uso la Raspberry Pi compila ese .asm a .hex, pero esto es otro tema. Por eso hay que tener las ideas de lo que se va hacer.

Cuando se pase el código compilado en .hex, lo pruebo en el PIC16F84A haber si funciona. Hablando si usamos una Raspberry Pi, ya que se puede instalar el MPLAB X y poder compilar, si usamos arduino, que cree el archivo, lo guarde en una Micro-SD y lo compilo en un ordenador convencional.

Antes que nada, encontrar un buen emulador del Altair para segurarse de como funciona bien.
http://www.autometer.de/unix4fun/z80pac ... ltair.html
http://www.emutopia.com/index.php/downl ... ltair-8800
http://www.classiccmp.org/altair32/Altair32links.htm
https://www.electronicsweekly.com/blogs ... 0-2017-01/

Aquí han hecho un Altair 8080 clónico físico.


http://altairclone.com/details.htm


http://d.hatena.ne.jp/nearbridge/20070119/p1

Como dije arriba, quiero la lista de lo sbinarios de las instrucciones del asm de los PIC. ¿Existe esa lista?
No la encuentro.

Saludos.

PD: Disculpen si este tema no va aquí.

Avatar de Usuario
explorer
MSX Turbo R
MSX Turbo R
Mensajes: 398
Registrado: 11 May 2014, 17:10
Sistema Favorito: Atari ST
primer_sistema: Atari 800XL/600XL
consola_favorita: Atari 2600
Primera consola: Atari 2600
Ubicación: Valladolid, España
Gracias dadas: 2 veces
Gracias recibidas: 138 veces
Contactar:

Re: Binario en el asm de los PIC

Mensajepor explorer » 25 Jul 2017, 23:36

Página 36 del documento DS35007C "PIC16F84A - 18-pin Enhanced FLASH/EEPROM 8-Bit Microcontroller", que puedes encontrar en la web de MicroChip.

Si no lo encuentras, avísame.

REHome
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 145
Registrado: 19 Abr 2013, 22:01
Sistema Favorito: Spectrum +2
primer_sistema: Spectrum +2
Gracias dadas: 3 veces
Gracias recibidas: 2 veces

Re: Binario en el asm de los PIC

Mensajepor REHome » 26 Jul 2017, 00:00

Gracias, lo había olvidado. ;)

Imagen

Imagen

http://ww1.microchip.com/downloads/en/d ... 35007c.pdf

Ahora me toca primero hacerlo en modo consola bajo C# como un emulador para probar, es decir, coger la instrucción MOVF que su binario es:

00001000

Ejemplo de esta instruccion.

MOVF PORTB, 1

Sería 00001000 dfffffff.

La parte de PORTB, 1. ¿Cómo se cuando son ceros o son unos?

El contenido del registro f se carga en el registro destino dependiendo del valor de d. Si d=0 el destino es el registro w, si d=1 el destino es el propio registro f. Esta instrucción permite verificar dicho registro ya que el flag Z queda afectado.

Así que la dfffffff, sería por ahora 1fffffff ya que es el destino.

Total por ahora:
00001000 1fffffff

Teniendo 00001000 1fffffff. ¿Cómo se que bit va en las f?

Saludos.

Avatar de Usuario
na_th_an
Amiga 1200
Amiga 1200
Mensajes: 1273
Registrado: 10 Oct 2012, 11:17
Sistema Favorito: (Otro)
primer_sistema: Spectrum +2
consola_favorita: Sony PlayStation 1
Primera consola: Sega Master System
Gracias dadas: 18 veces
Gracias recibidas: 15 veces

Re: Binario en el asm de los PIC

Mensajepor na_th_an » 26 Jul 2017, 08:21

REHome escribió:La parte de PORTB, 1. ¿Cómo se cuando son ceros o son unos?
[...]
Teniendo 00001000 1fffffff. ¿Cómo se que bit va en las f?


Ensamblando. Portb estará definido en algún lado, probablemente en un EQU. Cuando encuentras un identificador, tienes que buscar en el listado a qué valor equivale, en el caso de ser una constante, o a qué posición de memoria (u offset) se refiere, de ser una etiqueta.

REHome
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 145
Registrado: 19 Abr 2013, 22:01
Sistema Favorito: Spectrum +2
primer_sistema: Spectrum +2
Gracias dadas: 3 veces
Gracias recibidas: 2 veces

Re: Binario en el asm de los PIC

Mensajepor REHome » 26 Jul 2017, 13:26

Hola:

Busqué el p16f84a.inc en la dirección del MPLAB X 3.65.
C:\Program Files (x86)\Microchip\MPLABX\v3.65\mpasmx

Código: Seleccionar todo

        LIST

;==========================================================================
; Build date : May 17 2017
;  MPASM PIC16F84A processor include
;
;  (c) Copyright 1999-2017 Microchip Technology, All rights reserved
;==========================================================================

        NOLIST

;==========================================================================
;  This header file defines configurations, registers, and other useful
;  bits of information for the PIC16F84A microcontroller.  These names
;  are taken to match the data sheets as closely as possible.
;
;  Note that the processor must be selected before this file is included.
;  The processor may be selected the following ways:
;
;       1. Command line switch:
;               C:\MPASM MYFILE.ASM /PIC16F84A
;       2. LIST directive in the source file
;               LIST   P=PIC16F84A
;       3. Processor Type entry in the MPASM full-screen interface
;       4. Setting the processor in the MPLAB Project Dialog
;==========================================================================

;==========================================================================
;
;       Verify Processor
;
;==========================================================================
        IFNDEF __16F84A
           MESSG "Processor-header file mismatch.  Verify selected processor."
        ENDIF



;==========================================================================
;
;       Register Definitions
;
;==========================================================================

W                EQU  H'0000'
F                EQU  H'0001'

;----- Register Files -----------------------------------------------------

;-----Bank0------------------
INDF             EQU  H'0000'
TMR0             EQU  H'0001'
PCL              EQU  H'0002'
STATUS           EQU  H'0003'
FSR              EQU  H'0004'
PORTA            EQU  H'0005'
PORTB            EQU  H'0006'
EEDATA           EQU  H'0008'
EEADR            EQU  H'0009'
PCLATH           EQU  H'000A'
INTCON           EQU  H'000B'

;-----Bank1------------------
OPTION_REG       EQU  H'0081'
TRISA            EQU  H'0085'
TRISB            EQU  H'0086'
EECON1           EQU  H'0088'
EECON2           EQU  H'0089'

;----- STATUS Bits -----------------------------------------------------
C                EQU  H'0000'
DC               EQU  H'0001'
Z                EQU  H'0002'
NOT_PD           EQU  H'0003'
NOT_TO           EQU  H'0004'
IRP              EQU  H'0007'

RP0              EQU  H'0005'
RP1              EQU  H'0006'


;----- PORTA Bits -----------------------------------------------------
RA0              EQU  H'0000'
RA1              EQU  H'0001'
RA2              EQU  H'0002'
RA3              EQU  H'0003'
RA4              EQU  H'0004'


;----- PORTB Bits -----------------------------------------------------
RB0              EQU  H'0000'
RB1              EQU  H'0001'
RB2              EQU  H'0002'
RB3              EQU  H'0003'
RB4              EQU  H'0004'
RB5              EQU  H'0005'
RB6              EQU  H'0006'
RB7              EQU  H'0007'


;----- INTCON Bits -----------------------------------------------------
RBIF             EQU  H'0000'
INTF             EQU  H'0001'
T0IF             EQU  H'0002'
RBIE             EQU  H'0003'
INTE             EQU  H'0004'
T0IE             EQU  H'0005'
EEIE             EQU  H'0006'
GIE              EQU  H'0007'

TMR0IF           EQU  H'0002'
TMR0IE           EQU  H'0005'


;----- OPTION_REG Bits -----------------------------------------------------
PSA              EQU  H'0003'
T0SE             EQU  H'0004'
T0CS             EQU  H'0005'
INTEDG           EQU  H'0006'
NOT_RBPU         EQU  H'0007'

PS0              EQU  H'0000'
PS1              EQU  H'0001'
PS2              EQU  H'0002'


;----- TRISA Bits -----------------------------------------------------
TRISA0           EQU  H'0000'
TRISA1           EQU  H'0001'
TRISA2           EQU  H'0002'
TRISA3           EQU  H'0003'
TRISA4           EQU  H'0004'


;----- TRISB Bits -----------------------------------------------------
TRISB0           EQU  H'0000'
TRISB1           EQU  H'0001'
TRISB2           EQU  H'0002'
TRISB3           EQU  H'0003'
TRISB4           EQU  H'0004'
TRISB5           EQU  H'0005'
TRISB6           EQU  H'0006'
TRISB7           EQU  H'0007'


;----- EECON1 Bits -----------------------------------------------------
RD               EQU  H'0000'
WR               EQU  H'0001'
WREN             EQU  H'0002'
WRERR            EQU  H'0003'
EEIF             EQU  H'0004'




;==========================================================================
;
;       RAM Definitions
;
;==========================================================================
       __MAXRAM  H'00CF'
       __BADRAM  H'0007'
       __BADRAM  H'0050'-H'007F'
       __BADRAM  H'0087'

;==========================================================================
;
;       Configuration Bits
;
;   NAME            Address
;   CONFIG            2007h
;
;==========================================================================

; The following is an assignment of address values for all of the
; configuration registers for the purpose of table reads
_CONFIG         EQU  H'2007'

;----- CONFIG Options --------------------------------------------------
_FOSC_LP             EQU  H'3FFC'; LP oscillator
_LP_OSC              EQU  H'3FFC'; LP oscillator
_FOSC_XT             EQU  H'3FFD'; XT oscillator
_XT_OSC              EQU  H'3FFD'; XT oscillator
_FOSC_HS             EQU  H'3FFE'; HS oscillator
_HS_OSC              EQU  H'3FFE'; HS oscillator
_FOSC_EXTRC          EQU  H'3FFF'; RC oscillator
_RC_OSC              EQU  H'3FFF'; RC oscillator

_WDTE_OFF            EQU  H'3FFB'; WDT disabled
_WDT_OFF             EQU  H'3FFB'; WDT disabled
_WDTE_ON             EQU  H'3FFF'; WDT enabled
_WDT_ON              EQU  H'3FFF'; WDT enabled

_PWRTE_ON            EQU  H'3FF7'; Power-up Timer is enabled
_PWRTE_OFF           EQU  H'3FFF'; Power-up Timer is disabled

_CP_ON               EQU  H'000F'; All program memory is code protected
_CP_OFF              EQU  H'3FFF'; Code protection disabled

;----- DEVID Equates --------------------------------------------------
_DEVID1          EQU  H'2006'

;----- IDLOC Equates --------------------------------------------------
_IDLOC0          EQU  H'2000'
_IDLOC1          EQU  H'2001'
_IDLOC2          EQU  H'2002'
_IDLOC3          EQU  H'2003'

        LIST


Por lo que cuentas, ería esto:

PORTB EQU H'0006'

¿Te dice algo?

Entonces del 00001000 1fffffff, sería 00001000 10000110

Ya que 6 en hex equivale a 110 en binario. Aún así no me cuadra, porque el PORTB, 1, hay un uno.

Es la parte que no entiendo.

Avatar de Usuario
explorer
MSX Turbo R
MSX Turbo R
Mensajes: 398
Registrado: 11 May 2014, 17:10
Sistema Favorito: Atari ST
primer_sistema: Atari 800XL/600XL
consola_favorita: Atari 2600
Primera consola: Atari 2600
Ubicación: Valladolid, España
Gracias dadas: 2 veces
Gracias recibidas: 138 veces
Contactar:

Re: Binario en el asm de los PIC

Mensajepor explorer » 26 Jul 2017, 13:44

MOVF PORTB, 1

El '1' indica que queremos mover el registro destino (PORTB) hacia... sí mismo.

Es más claro si escribes la instrucción de esta manera:

MOVF PORTB, F


Esto lo hacemos por la única razón de activar el indicador Z del registro de estado. Vamos, que estamos preguntando si el PORTB está a 0 o no. En la nota 1 de la página 36 que has puesto antes, verás que cuando «un registro de E/S se modifica como resultado de una función en sí mismo (por ejemplo, MOVF PORTB, 1), el valor que se usará será el valor presente en los propios pines. por ejemplo, si la pastilla de datos ("data latch") es '1' para un pin que está configurado como entrada, y se ha puesto como activo por caída de tensión ("pulldown") por un dispositivo externo, el dato que se devuelve será un '0'».

La dirección del PORTB (mirándolo en la hoja de datos) es la 06h, por lo que la instrucción debería ser (si no me equivoco)

00001000 1 000 0110

La descripción detallada de lo que hace cada instrucción la puedes encontrar en este documento: "DS33023A-1997-PICmicro Mid-Range MCU Family Reference Manual-Microchip", página 523, o en DS31029A, que es realmente todo el documento. Este documento es del 1997, así que debe existir otro más moderno, y con más instrucciones explicadas, pero te vale para el PIC que has elegido.

REHome
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 145
Registrado: 19 Abr 2013, 22:01
Sistema Favorito: Spectrum +2
primer_sistema: Spectrum +2
Gracias dadas: 3 veces
Gracias recibidas: 2 veces

Re: Binario en el asm de los PIC

Mensajepor REHome » 26 Jul 2017, 18:33

Hola:

El resultado en este caso es del 2007.
http://ww1.microchip.com/downloads/en/D ... 33023a.pdf

2009.
http://ww1.microchip.com/downloads/en/D ... 31000a.pdf

00001000 1 000 0110 es el valor que te dije y coincidimos.

MOVF PORTB, F.

Del MOVF PORTB, 1 al MOVF PORTB, 7. ¿Qué cambia entre uno y otro?

;----- PORTB Bits -----------------------------------------------------
RB1 EQU H'0001'
RB7 EQU H'0007'


h7 = b'111'

00001000 1 000 0110
00000000 0 000 0111 +
------------------------------
00001000 1 0001101 Resultado final si no me equivoco.

PORTB, 7 El PORTB se suma al 7, el operando con el operador.

PORTB EQU H'0006' + RB7 EQU H'0007'
00000110 + 00000111
Resultado de los 8 bits finales son h7, o lo que es lo mismo, 1101 en binario.

La instrucción MOVF que es 00001000, más el d que es 1porque es destino, más la suma del PORT y el bit 7 que son 00000111.
Sigo pensando, si no me equivoco que 00001000 1 0001101 es sinónimo del MOVF PORTB, F. En hexadecimal sería, 088D, lo que se vería en el archivo .hex.

b00001000 1 0001101 = h088D

Al compilar el .asm podemos tener como resultado el archivo .hex de esta manera.

Código: Seleccionar todo

:10010000214601360121470136007EFE09D2190140
:100110002146017EB7C20001FF5F16002148011988
:10012000194E79234623965778239EDA3F01B2CAA7
:100130003F0156702B5E712B722B732146013421C7
:00000001FF


Según pone aquí.

Cuando ya tenga las cosas clara, se puede hacer un desamblador. Que dicen que no es lo mismo que descomplilar. No se que creer.

Saludos.

Avatar de Usuario
explorer
MSX Turbo R
MSX Turbo R
Mensajes: 398
Registrado: 11 May 2014, 17:10
Sistema Favorito: Atari ST
primer_sistema: Atari 800XL/600XL
consola_favorita: Atari 2600
Primera consola: Atari 2600
Ubicación: Valladolid, España
Gracias dadas: 2 veces
Gracias recibidas: 138 veces
Contactar:

Re: Binario en el asm de los PIC

Mensajepor explorer » 26 Jul 2017, 20:59

No, no lo has entendido.

MOVF PORTB, 1

Lo que hay después de la coma, no es un OPERANDO. Es un INDICADOR (flag).

Es decir, lo que sigue después de la coma es un indicador de dónde queremos que se guarde el resultado del MOVF.
Si es un '0', estamos indicando que el resultado se guarde en el registro W.
Si es un '1', estamos indicando que el resultado se guarde en el propio registro F que estamos leyendo.

Como... acordarse de si es un '0' o un '1' es difícil a la hora de programar, en el archivo de definiciones del programa ensamblador (p16f84a.inc) que has publicado antes, verás que hay una sección así:

Código: Seleccionar todo

;==========================================================================
;
;       Register Definitions
;
;==========================================================================

W                EQU  H'0000'
F                EQU  H'0001'

por lo que, entonces, podemos escribir la instrucción anterior como

MOVF PORTB, F

que es más fácil de recordar (estamos moviendo el contenido del registro F PORTB a él mismo). Cosa distinta sería

MOVF PORTB, W

que entonces vemos que lo queremos mover al registro W.

El programa ensamblador sustituye

MOVF PORTB, F

por

MOVF H'0006', H'0001'

y lo traduce a la instrucción final (en hexadecimal en el archivo .hex).

REHome
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 145
Registrado: 19 Abr 2013, 22:01
Sistema Favorito: Spectrum +2
primer_sistema: Spectrum +2
Gracias dadas: 3 veces
Gracias recibidas: 2 veces

Re: Binario en el asm de los PIC

Mensajepor REHome » 27 Jul 2017, 06:05

explorer escribió:
El programa ensamblador sustituye

MOVF PORTB, F

por

MOVF H'0006', H'0001'

y lo traduce a la instrucción final (en hexadecimal en el archivo .hex).


Buena explicación.

Lo explico a modo de colores, espero que entiendas lo que quiero interpretar.

MOVF PORTB, F

MOVF H'0006', H'0001'

00001000 1 000 0110

¿Es así?

Saludos.

Avatar de Usuario
explorer
MSX Turbo R
MSX Turbo R
Mensajes: 398
Registrado: 11 May 2014, 17:10
Sistema Favorito: Atari ST
primer_sistema: Atari 800XL/600XL
consola_favorita: Atari 2600
Primera consola: Atari 2600
Ubicación: Valladolid, España
Gracias dadas: 2 veces
Gracias recibidas: 138 veces
Contactar:

Re: Binario en el asm de los PIC

Mensajepor explorer » 27 Jul 2017, 17:19

Sí, es así. Pero para el caso concreto de MOVF. Otras instrucciones pueden tener distintas interpretaciones, como has visto en el documento de datos.
Última edición por explorer el 05 Sep 2019, 16:40, editado 1 vez en total.


Volver a “Emuladores”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 11 invitados