🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #309105

Re: wirtulny asembler + wirtulny komputer + sound

#309105
From: Luke
Date: Sun, 12 Feb 2017 13:42
41 lines
3201 bytes
W dniu 2017-02-11 o 20:54, (fir) pisze:
> ostatnio (dokladniej wczoraj) napisalem sobie asembler 
> ktory asembluje wirtualny asembler mojego wlasnego wymyslu
> do kodu binarnego tez mojego wymyslu

Odnoszę wrażenie, że ostatnio każdy informatyk chce sobie udowodnić
swoją informatyczność przez stworzenie własnego języka programowania
i/lub maszyny wirtualnej ;)

Bez informacji, po to to jest robione, odpowiedź na to pytanie nie jest
możliwa.

Bo jeśli robisz to dla zabawy, ćwiczenia, zdobywania doświadczenia, czy
uczynienia się lepszym programistą przez rozwiązywanie problemów z tym
związanych, to nikt nie wie, z czego Ty sam będziesz miał "maxymalny fun".

Jeśli maszyna wirtualna nie jest prawdziwą maszyną, ze swoimi
ograniczeniami sprzętowymi, tylko jest wirtualnym interpreterem cyferek,
to możesz sobie zrobić wszystko.

Nawet możesz ponumerować funkcje biblioteki standardowej. Wtedy
wywołanie np. fopen() będzie wymagało umieszczenia w kilku rejestrach
adresów do parametrów i wywołanie jakiegoś przerwania (a przerwań może
być 65536, czyli całą bibliotekę ponumerujesz i jeszcze Ci zostanie).
Albo jedno z przerwań będzie do obsługi plików, a w rejestrze masz 65536
możliwych operacji na plikach. Wtedy program w C kompiluje się do
ultrakrótkich pliczków dla takiej maszyny.

Dodatkowo możesz analogicznie, oprogramować grafikę. Trzeba narysować
kółko? Proszę bardzo - do a i b współrzędne na ekranie, do c promień, do
d kolor, i wywołujemy odpowiednie przerwanie. Albo jedno przerwanie dla
wszystkich figur, a w rejestrze f ma być numerek figury.

Odnośnie dźwięku, możesz też napisać dla tej maszyny całą bibliotekę.
Wtedy zagranie dowolnej muzyki będzie też się sprowadzało do wywołania
odpowiednich przerwań wirtualnych.

Pytanie tylko: po co. Jeśli dla zabawy, to nikt nikomu nie broni. Ale
skąd my mamy wiedzieć, co da Ci ten maxymalny fun? :D

L.
Technical Details
Message-ID: <58a06654$0$5152$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!peer03.am4!peer.am4.highwinds-media.com!peer02.fr7!futter-mich.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <20b055aa-ce5e-4acb-b6af-d0f10b85c63c@googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!peer03.am4!peer.am4.highwinds-media.com!peer02.fr7!futter-mich.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Subject: Re: wirtulny asembler + wirtulny komputer + sound
Newsgroups: pl.comp.lang.c
References: <20b055aa-ce5e-4acb-b6af-d0f10b85c63c@googlegroups.com>
From: Luke <luke@luke.net>
Date: Sun, 12 Feb 2017 14:42:44 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1
MIME-Version: 1.0
In-Reply-To: <20b055aa-ce5e-4acb-b6af-d0f10b85c63c@googlegroups.com>
X-Antivirus: avast! (VPS 170211-0, 2017-02-11), Outbound message
X-Antivirus-Status: Clean
Lines: 45
Message-ID: <58a06654$0$5152$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.9.24.238
X-Trace: 1486906965 unt-rea-a-01.news.neostrada.pl 5152 83.9.24.238:58991
X-Complaints-To: abuse@news.neostrada.pl
X-Received-Bytes: 2964
X-Received-Body-CRC: 2962628953
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit