OldComp.cz http://oldcomp.cz/ |
|
Jak porozumět tomuto asm? http://oldcomp.cz/viewtopic.php?f=100&t=5845 |
Stránka 1 z 1 |
Autor: | mmartinka [ 13 led 2018, 21:25 ] |
Předmět příspěvku: | Jak porozumět tomuto asm? |
Koukal jsem na demo od Goblinish na vložený zdrojak a neporozuměl jsem některým zapisům. Adresa na pouet: http://www.pouet.net/prod.php?which=73239 Ve zdrojáku je například řádek: ld a,l,(fy1+1),a ld a,h,(fy2+1),a co nakonec vloží do a? fx: ld (hl),$ED:inc hl ld (hl),$A0:inc hl proč takto? kvůli velikosti výsledného kodu? Ještě toto: inc hl,hl Díky |
Autor: | mborik128 [ 13 led 2018, 22:01 ] |
Předmět příspěvku: | Re: Jak porozumět tomuto asm? |
To su vsetko (bohuzial) zapisy assembleru SjASM alebo SJASM+ ... potom je pruser to citat pre kohokolvek. ![]() Btw nedavno, ked z00m/Cizo/Busy pripravovali SjAsmPlus do cross-platform kompilovatelnej podoby, tak sa normalne chvilu uvazovalo, ze tieto hnus-featury odtial vyhodime ![]() V preklade to znamena jednoducho iba: Kód: ld a,l
ld (fy1+1),a ld a,h ld (fy2+1),a ld (hl),$ED inc hl ld (hl),$A0 inc hl inc hl inc hl |
Autor: | mmartinka [ 13 led 2018, 22:18 ] |
Předmět příspěvku: | Re: Jak porozumět tomuto asm? |
Aha, díky za info, teď už je to čitelnější ![]() |
Autor: | Busy [ 14 led 2018, 00:10 ] |
Předmět příspěvku: | Re: Jak porozumět tomuto asm? |
Presne ako pise mborik128, su to zjednodusene zapisy viacerych instrukcii v zdrojaku pre SjASM(+). Povodne boli myslene ako ulahcenie pisania programov, ale ja osobne ich nemam rad a ani ich nepouzivam, pretoze niekedy dokazu program dost zneprehladnit aj samotnemu pisatelovi. A dokonca obcas vedu k nepochopitelnym chybam v programe. Napriklad ked clovek napise add a,b tak logicky ocakava ze sa k a pripocita b. Co je aj pravda. Podobne tak napr. napise sub a,b ale ak logicky ocakava ze sa od a odcita b, tak ... to je omyl. V skutocnosti tato rozsirena syntax pisania sposobi to, ze sub a,b sa prelozi do dvoch instrukcii: sub a sub b a clovek sa potom hrozne divi, ako to ze a) ma potom v registri a uplne nieco ine nez ocakava b) sa mu rozpadne casovanie programu (napr. multicolor). A az pri debugovani zisti, ze SjASM, namiesto toho aby akceptoval tuto syntax ako niektore ine kompilery, alebo ked nie tak aspon zahlasil chybu syntaxe, tam "prepasoval" to sub a ktore tam nema co robit. |
Autor: | Lisiak4 [ 14 led 2018, 19:27 ] |
Předmět příspěvku: | Re: Jak porozumět tomuto asm? |
Ty zápisy jsou opravdu děs, připomíná mi to závorkovaní (indexace a jiné) ve vyšším programovacím jazyce ![]() |
Autor: | mmartinka [ 16 led 2018, 12:32 ] |
Předmět příspěvku: | Re: Jak porozumět tomuto asm? |
Tak nějak pochopeno ![]() Myslel jsem že převedu jen asm, ale tak jednoduché to není ![]() Samozřejmě jsem neřeši šíři dat 8bit a pouze jsem použil 6bitu, proto je to kostrbaté. Také generovaná data jsou dost rozsáhlá a proto mi to zatím běží pouze na PMD3. Zde ukázka: |
Autor: | Busy [ 16 led 2018, 12:49 ] |
Předmět příspěvku: | Re: Jak porozumět tomuto asm? |
No parada, gratulujem k uspesnej portacii ! ![]() Skus naprogramovat aj nieco vlastne a posli na Forever do kategorie Other 8bit 1k intro compo ![]() ![]() |
Stránka 1 z 1 | Všechny časy jsou v UTC + 1 hodina |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |