Stránka 5 z 6

Napsal: 26 bře 2018, 20:16
od pettter
Ďakujem páni!

AB1 píše:...Je to naopak. W se odečte od konstanty a uloží do W.
SUBLW KONSTANTA = 0x05 - 0x0A = -5


Sorry, ale uniká mi logika tej vety...
Ak: ...W se odečte od konstanty..., tak to máš Ty naopak! Ak sa 10 odčíta od 20, tak vzorec je:
20 - 10 =...
Nechcel si napísať, že sa konštanta odčíta od W?

Vyššie uvádzam citáty s DS kde je aj toto:
"Operands vyzerá takto: k-(W)→(W), v českom DS k 16F84A: (W) = k - (W)"

Nechcem Ťa poučovať, až taký noob zase nie som. Len čistím myšlienky.

Napsal: 26 bře 2018, 20:33
od pettter
AB1 píše:...Operand je tady (LEDMEM - 1) = 0x1f.
Od 0x1f odečti W a ulož do W.


Aha! Takže ak za operand dám dáke číslo so znamienkom + či - , tak to urobí pred samostatným vykonaním príkazu tento matematický úkon? Keby som dal napr:

Kód: Vybrat vše

NIEČO EQU 20
MOVLW 10
SUBLW NIEČO + 3

Tak výsledok bude: (NIEČO + 3) - W = 13?

Ak áno, tak kua kde sa toto píše v tých po..aných DS?

A ešte mi prosím prezraď, ako to je s formátom hodnoty. V celom kóde sú hodnoty v hex a neraz jééb a je tu "LEMEM - 1" a sme v dekadickej rade. To ma poser.
Viem že číslo jedna nie je práve moc rozdiel, ale ak by sa napísalo napr. dekadických "17", nie je to problém pre prevod do strojového kódu? Či to assembler zožerie ako mu to napíšeš. Nemá tam byť dáka značka, že je to dekadický, binárny a tak? Napr: LEMEM - 1. (bodka/tečka za 1)

Napsal: 26 bře 2018, 20:56
od MiloPS3
1 nebo D1 - decimal
0x01/0x1 - hexadecimal
Ox01 - octal
0b00000001 - binary

A urcite to najdes i v helpu MPLABu

Napsal: 26 bře 2018, 21:26
od pettter
MiloPS3 píše:...Ox01 - octal...


No vidíš, ešte aj toto...! :roll:

Napsal: 27 bře 2018, 09:18
od MiloPS3
MPLAB X help , priloha

PS:mas od vcera neprectenou SZ

Napsal: 29 bře 2018, 13:20
od pettter
PIC16F88
Assembler v MPLAB IDE 8

Príkaz SUBLW mi nejde do gebule. Našiel som taký príklad http://www.pcbheaven.com/picpages/Mathematic_Instructions/ kde je kód:

Kód: Vybrat vše

movlw d'30'   ;The W register has now the value '30'
sublw d'100'  ;The content of W register is subtracted from the value '100'
                    ;Now the W register has the decimal value '70'

Ale ja neviem dosiahnuť ten výsledok! Prečo?
Môj kód:

Kód: Vybrat vše

LIST P=16F88
#include p16f88.inc
movlw d'30'   ;The W register has now the value '30'
sublw d'100'  ;The content of W register is subtracted from the value '100'
                   ;Now the W register has the decimal value '70'
            END

V simulácii to beží až na ten výsledok.
Skúsil som aj iné číslo, napr. 0!

Kód: Vybrat vše

movlw d'0'
sublw d'0'

Výsledok je .25!!! Ako môže byť nula - nula 25...???

Napsal: 29 bře 2018, 16:16
od MiloPS3
mas tam jednu zasadni a podstatnou chybu, struktura programu ...
skusim o tom neco najit pak ti to sem hodim, skus zatim premejslet

Napsal: 29 bře 2018, 16:31
od pettter
MiloPS3 píše:mas tam jednu zasadni a podstatnou chybu, struktura programu ...


V dvoch riadkoch kódu??? Ako neviem o tom nič, tak sa len čudujem. Sa PICnem...

MiloPS3 píše:... skusim o tom neco ...


Prosím Ťa a Tebe to v simulácii fachčí ako?

Napsal: 29 bře 2018, 16:53
od MiloPS3
jo funguje "ale...."

https://web.archive.org/web/20160424154 ... l&mobile=0

PS:doporucuju projit si vsechny dily

Napsal: 29 bře 2018, 18:07
od pettter
MiloPS3 píše:jo funguje "ale...."

Ma drbne... pošli prosím kód. Ja si ho skopčím do nového projektu a uvidím... ja už mám pochybnosťi aj o tom, či píšem to, čo vidím.
Neviem či som už postihnutý, či mám divnú klávesnicu...
MiloPS3 píše:...pandatron.cz...

No tu som začal. Potom som si kúpil EasyPIC v7, aby som mal na čom blikať a potom Pandatron zmizol... Vraj ten pán čo ho mal zomrel...

Napsal: 29 bře 2018, 18:36
od MiloPS3
neposlu...

tady je malej kod,skopiruj si ho bez ty hlavicky a odsimuluj si ho , pak odsimuluj ten tvuj a uvidis ...

Napsal: 29 bře 2018, 18:41
od pettter
Si ma nepochopil. Ja som myslel, že ak si skúšal ten príkaz SUBLW a Tebe to šlo dobre. Tak aby si mi toto poslal. Neva, študujem ten Pandatron...

Napsal: 29 bře 2018, 18:52
od MiloPS3
pochopil ,tys to nepochopil, prave kvuli ty chybe ti to nefunguje, odsimuluj si ten blikac

Napsal: 29 bře 2018, 21:39
od pettter
Dneska nie. Vybuchla pivná smršť na "zelený štvrtok" čapovali zelené! No nechoď...

Napsal: 30 bře 2018, 10:47
od pettter
Už to šlape! Napísal som do Microchipu na forum http://www.microchip.com/forums/m1045896.aspx
Asi mám problém s tým, že som neukončil korektne program. Domnieval som sa, že slovo END na to stačí. Zjavne nie...