Aktualności: C64 Power - online od stycznia 2000 !

Autor Wątek: proces TOKENIZACJI w C64  (Przeczytany 583 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Slay_

  • Gość
proces TOKENIZACJI w C64
« dnia: 10 Września 2002, 10:03 »
czy ktos potrafi mi przyblizyc, na czym to cos polega. czytalem o tym w takiej ksiazce, ale dla atari. tylko, ze w sumie gufno sie da z niej wyczytac.
przydaloby mi sie to. nie jest to, mniemam, rzecz trudna, bo wystarczy cos w basicu napisac i zajrzec potem monitorem w pamiec. mimo to pytam, czy ktos moze sie na tym bardzo dobrze zna i moglby mi oszczedzic trudu dochodzenia tego samemu.



Jemasoft_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #1 dnia: 11 Września 2002, 21:58 »
W wielkim skrocie mowiac Commodore Basic dla oszczedzenia pamieci rozkazy Basic\'a przechowuje w postaci jednego bajta a nie liter skladajacych sie na komende. Ten bajt nazywa sie token.

Podczas realizowania komendy LIST interpreter wyswietlajac tresc programu zamienia tokeny na powrot w slowo pisane. Efekt ten jest widoczny kiedy wyprodukujemy linie Basic\'a zajmujaca pelne dwa wiersze rozkazow wykorzystujac skrocony sposob wpisywania komend. Po wylistowaniu takiej linii interpreter wyswietli pelna tresc rozkazow i okaze sie, ze teraz linia programu potrafi zajac trzy wiersze.

Slay_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #2 dnia: 11 Września 2002, 23:11 »
dobra. kody kazdej z komend juz mam wypisane (monitor jest jednak przydatnym narzedziem hehe
no a co z liczbami? czemu one nie sa w podobny sposob ":skracane":??
przeciez kupe miejsca mozna by zaoszczedzic czyniac to wlasnie
 
chcialbym stworzyc interpreter, ktory zamienialby mozliwie wszystkie elementy jezyka na  
tokeny. ":wszystkie":, bo po pierwsze slowa kluczowe, dalej kazdego typu stale (takze lancuchy  
tekstowe), nazwy zmiennych, procedur i funkcji uzytkownika (opierajac sie na liczbowej notacji BCD -  
chyba dobrze zapamietalem, BCD tak? - 2 cyfry 1 bajt, tu zas 2 litery 1 bajt) dlatego miedzy innymi  
pytalem na forum o zapis liczb w pamieci
chcialym stworzyc cos, co zuzywaloby w swoich procesach mozliwie najmniej pamieci, zostawiajac te  
oszczedzona programiscie oczywiscie na ":zrodlo":
 
pytanie mam jeszcze jedno bardzo mnie kwapiace: w jaki sposob ":chowane": sa pamieci zmienne  
lancuchowe. gdzie zapisywane sa informacje o nazwie zmiennej? gdzie umieszczana jest wartosc kazdej  
zmiennej tekstowej? skad potem interpreter przy odwolaniu do zmiennej wie, gdzie tego tekstu szukac?  
gdzies zapisywane musze byc tez i adresy poczatku kazdego takiego lancucha znakowego. a co z jego  
dlugoscia? interpreter drukujac po instrukcjach  A$=":DEFLORATOR": : PRINT A$ napis przypisany  
zmiennej A$, wie w koncu, ze musi wyswietlic ten a nie inny napis. a gdy dlugosc lanchow rosnie,  
tudziez maleje - to co wtedy? troche sie domyslam, ale gdzie, jak i co sie wtedy zmienia? pewnie  
zmieniaja sie te ":adresy":. nie wiem zreszta. monitorem dochodze tego juz ktorych rok, ale nie potrafie  
sobie po dzis dzien na te pytania odpowiedziec
 
zatep, help me!

Jemasoft_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #3 dnia: 12 Września 2002, 16:53 »
A nie mozesz wymyslic czegos wlasnego? Chcesz skopiowac interpreter Basic\'a Commodorka? Rusz glowa. Basic Commodorka to nie jest akurat dobry wzorzec do nasladowania bo napisali go debile z firmy Microsoft. Jak chcesz nasladowac styl programowania Microsoftu to lepiej od razu zacznij handlowac pietruszka.

Slay_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #4 dnia: 12 Września 2002, 17:59 »
nie mam zamiaru. wrecz przeciwnie, bo tak jak pan mowi, chce miec wszystko ":od siebie":. chce jednak wiedziec, jakich rozwiazan uzyto w c64-basic, co by to sobie samemu ocenic, przemyslec. bogatszy o taka wiedze bede, mam nadzieje, pewny tego, ze nie popelniam tych samych, co autorzy, o ktorych pan wspominal. bowiem teraz na przyklad majac swoich kilka projektow (m.in. projekty tego wszystkiego, o co pytalem post wczesniej), nie wiem czy nie potrzebuja one jakiejs zmiany, poprawki, albo w najgorszym wypadku wykonania na nowo.

ponawiam wiec pytanie, jak to wszystko sie w c64 przedstawia???

ps. odnosze wrazenie, ze nie darzy pan zbytnia sympatia informatykow z MS podejrzewam tez, ze z podobnych przyczyn, co ja. uzywa pan windy, prawda?? no wlasnie, ja tez. a czemu? bo nie ma poki co lepszego wyjscia. ale mimo tego, ze nie podoba mi sie ten ich na niemal wszystko monopol, to uwazam ludzi, ktorzy tworza pod ich logiem oprogramowanie za bardzo utalentowanych i wspanialych programistow. a ze nie stworzyli oni do tej pory ani jednego (tak przypuszczam) doslownie bezblednego programu, to juz nie ich wina. banalne, ale prawdziwe zawsze bedzie stwierdzenie, ze nikt nie jest doskonaly.

Jemasoft_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #5 dnia: 12 Września 2002, 18:50 »
To, ze nie szanuje programistow MS to widac golym okiem. Z dwojga zlego wole program prostszy ale dzialajacy a nie wieszajacy sie ale z wodotryskami.

Swego czasu na kolana rzucal AmigaOS ale jak zwykle wygraly pieniadze a nie postepowa technologia i pomysl nie doczekal sie godnej kontynuacji pomimo dobrej woli wielu fanow dzialajacych nierzadko charytatywnie.

Z mojego punktu widzenia proponowalbym cos najpierw wykombinowac i zrobic a potem porownac z konkurencja (np. z MS). Zbyt wczesne poznanie obcej technologii skutkuje skazeniem umyslu i potem juz ciezko opracowac wlasne autorskie rozwiazanie.

Przyklad?

Demka Crestow dlatego tak chodza jak chodza, ze oni nie wiedzieli iz takich efektow nie mozna na C64 zrobic i je zrobili.

Slay_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #6 dnia: 12 Września 2002, 19:11 »
>:Zbyt wczesne poznanie obcej technologii skutkuje skazeniem umyslu i potem juz ciezko opracowac wlasne autorskie rozwiazanie.

pozbawil mnie pan jakichkolwiek argumentow do dalszej dyskusji
dziekuje. nie ogladam sie wiec na nikogo i kombinuje dalej sam

a tych demkuf to ja nie widzial. so moze na emu??? sprawdze.

Slay_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #7 dnia: 13 Września 2002, 00:05 »
>:Demka Crestow dlatego tak chodza jak chodza, ze oni nie wiedzieli iz takich efektow nie mozna na C64 zrobic i je zrobili.

demka, demka, demka. pragnalbym zobaczyc te demka (emulowane oczywiscie). czy tak mozliwosc istnieje panie Jemasoft, he?? gdzie to to moge dostac??

Jemasoft_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #8 dnia: 17 Września 2002, 01:15 »
>:demka, demka, demka. pragnalbym zobaczyc te demka (emulowane oczywiscie). czy tak mozliwosc istnieje panie Jemasoft, he?? gdzie to to moge dostac??  
 
Demka Crestow sa oczywiscie do obciagniecia z emu64. Wystarczy sie posluzyc mega wyszukiwarka i wpisac Crest. Potem tylko trzeba zapodac relanium, zapiac w fotelu pasy i pograzyc sie w ogladactwie.

Slay_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #9 dnia: 18 Września 2002, 11:47 »
no no!
fiu fiu fiuuu!
ciekawe ciekawe nie powiem
dziekuje panie Jemasoft, przejrzalem
zaczynam sie chyba interesowac tego typu ee ":produktami":
jestem pod wrazeniem
wrrr....

Slay_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #10 dnia: 19 Września 2002, 00:01 »
taaak, crest rules!!! zastanawiam sie jednak, czmu techniki uzytye przy tworzeniu m.in. tych dem, nie sa uzywane w grach...

Jemasoft_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #11 dnia: 19 Września 2002, 23:51 »
>:taaak, crest rules!!! zastanawiam sie jednak, czmu techniki uzytye przy tworzeniu m.in. tych dem, nie sa uzywane w grach...
 
Niektore sa a niektore nie. Zwykle takie fantastyczne efekty pochlaniaja prawie caly czas procesora i nie sposob obslugiwac jeszcze kodu samej gierki. Wiekszosc tych efektow nie jest tez obliczana w czasie rzeczywistym tylko stanowi tablice gotowych lub prawie gotowych danych, ktore zostaly wczesniej obliczone a teraz sa wykorzystywane jako gotowce. Gierki (zwlaszcza te ruchome) maja zbyt wiele stopni swobody, a C64 za mala pamiec, aby przechowywac wszystkie mozliwe warianty obliczonych danych. W zwiazku z wolnym procesorem lepiej jest jego zasoby spozytkowac na sam sens gierki niz na wodotryski.

emeryt_

  • Gość
proces TOKENIZACJI w C64
« Odpowiedź #12 dnia: 13 Września 2002, 00:42 »
a mnie tam ta cala TOKENIZACJA kojarzy sie z ... bankowoscia no i sieciami (protokoly dostepu TOKEN RING, TOKEN PASS hehe). Ale czlowiek na stare lata dowiaduje sie o kolegi Jemasofta, ze token to bajt w c64. No no no