Přidat debatu mezi oblíbenéZasílat nové příspěvky e-mailem Operační systém po pádu civilizace

Jo Forth je prima a kdyz vychazel v Amaru, tak jsem si napsal vlastni verzi pro Z80.

A nedavno se mi zaclo styskat, tak jsem stahnul jonesforth a rozchodil ho na EE One (jo, staricky Atom) (problem 8 dam resi asi 38ms vcetne natazeni systemu a zkompilovani pulky slov - asi 100 ma vestavenou a dalsi 100 do zakladni knihovny uz psanou ve Forthu a nahravanou pri startu) a protoze jsem narazil na radu dotazu na x86_64 verzi, tak jsem si to preklopil i do ni a na Ryzen2 to chodi asi 4x rychleji (ale misto 16-bitovych cisel to pouziva samozrejme 64-bitova) ale ono tech par kilo se komplet vejde do cache a bezi to jen v jednom threadu, takze to zas tak nevynikne

Ted se chystam pustit do vlastni verze, protoze bych tam vrazil spoustu vychytavek, nektere veci resil zcela jinak (a pochopitelne lip), ale to uz by davno nebyl johnsonforth

A jako je to fakt docela jiny a zajimavy pristup k programovani a reseni problemu vubec - takze premyslim nad tim, jak tam zavest predkompilovane moduly a pouzit to v nekterych ulohach, kde by zprovna takovahle vychytavka mela velice dobry smysl. (kod je velmi kompaktni, protoze se preklada do bytekodu, jehoz interpreter ma par instrukci a a samotny bytekod jsou vlastne jen adresy bez vsech tech CALLu, RETurnu a sloziteho predavani parametru - to se resi primo jednoduchym zasobnikem, takze retezena volani se o to nemusi starat a jen to na nem nechaji (coz stoji hezkych kulatych 0 operaci), pridaji, ci zpracujou dle potreby - ja navic chci drzet vrsek zasobniku v registru, takze spousta operaci na ten zasobnik ani nebude muset sahat, nebo aspon podstatne min)

Reakce na příspěvek

1 Zadajte svou přezdívku:
2 Napište svůj příspěvek:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do debat