Kezdőoldal » Számítástechnika » Programozás » Nincs kedvetek Dos-t fejleszteni?

Nincs kedvetek Dos-t fejleszteni?

Figyelt kérdés
Megjött a kedvem egy kis parancssorozáshoz. Meg a nosztalgia!:)
dec. 12. 16:00
1 2 3 4 5 6 7 8 9
 71/86 anonim ***** válasza:
4%

A 8086 is rendelkezett szorzó áramkörrel, MUL utasítással, de a 8 bites korszak processzorai (6800, 8080, 6502, z80, 1802) nem tudtak szorozni. Osztani sem, a régebbi gépek, mint pl. a PDP sorozat első tagjai, nem, hogy szorozni/osztani, de még kivonni sem tudtak.

Gondolok itt natív szorzó, osztó és kivonó utasításokra és a mögöttes áramkörökre.

dec. 19. 21:46
Hasznos számodra ez a válasz?
 72/86 A kérdező kommentje:

[link]


Igaz! Volt MUL, IMUL

dec. 19. 21:53
 73/86 anonim ***** válasza:
3%

2D -> 1D transforming.


Mivel tudjuk, hogy a képernyő hány karaktert képes egyszerre megjeleníteni (80*25), ami ugye egy szép, kerek, 10-es számrendszer-beli szám (2000d), így ebből képezhetünk egy szimpla, egy dimenziós char tömböt.


Ezzel az általam említett három eszközből az egyik már meg is van. A tömb.

A másik kettő művelet lesz. Gondolom, ezt már csak kitaláljátok önerőből.

dec. 20. 14:25
Hasznos számodra ez a válasz?
 74/86 anonim ***** válasza:
4%

Eltelt több, mint egy nap, és megoldás még sehol.

Nem sikerül meghatározni azt a két műveletet, ami nyilván nem a szorzás. Nem is az összeadás, teszem hozzá gyorsan. Hát akkor mi lehet?

Az általam jósoltnál is keservesebb lesz így az operációs rendszer fejlesztése, nem gondoljátok?

dec. 21. 16:07
Hasznos számodra ez a válasz?
 75/86 A kérdező kommentje:

2024-04-30

A Microsoft legújabb lépése: Az MS-DOS 4.0 forráskódja mostantól nyíltan elérhető

dec. 22. 15:09
 76/86 anonim ***** válasza:
78%
Kérdező 75 (2024.11.22. 15:09) Köszi, ezt nem tudtam. Hasznos. És tanulságos.
dec. 22. 22:25
Hasznos számodra ez a válasz?
 77/86 anonim ***** válasza:
4%

Itt van, karácsonyi ajándék a -szellemi- szegényeknek:


10 x 4 screen. Egy-egy 'O' karakter jelöl egy-egy karakterhelyet. Az X és Y tengely metszéspontja jelöli ki a kurzor pozícióját.

A 2D reprezentáns:


OOOOOOOOOO

OOHelloOOO

OOOOOOOOOO

OOOOOOOOOO


Ugyanez 1D transzformálva (tömbösítve):


OOOOOOOOOO + OOHelloOOO + OOOOOOOOOO + OOOOOOOOOO


azaz, [OOOOOOOOOOOOHelloOOOOOOOOOOOOOOOOOOOOOOO].


Ehhez adott egy tömbindex és adott a karakter-szélesség (terminal-width), ami itt, a példa kedvéért 80 helyett 10. Belátható, hogy a terminal-width nevű konstans és a tömbindex birtokában nyilvántartható és lekérdezhető a kurzor pozíciója, illetve az X vagy Y értéke ebből a pozícióból (tömbindexből) bármikor számítható a MOD és a DIV segítségével.


Tehát, szorzás vagy összeadás, az ide pont nem kell.

Amúgy, annyira ritka ez a megoldás, hogy kb. mindenki ezt valósítja meg.



Boldog Karácsonyt.

dec. 22. 23:14
Hasznos számodra ez a válasz?
 78/86 anonim ***** válasza:
82%

Ezzel csak két gond van...


1./ Ez a megoldás egészen addig tökéletesen működik, amíg telehányjuk a képernyőt. Az első "kezd el a következő új sort" karakterig tök jól működik.

2./ Hogyan oldod meg azt, hogy a Cursor egy adott pozícióra kerüljön?

3./ Nyilván kicsavartad, hogy megint igazad legyen.

4./ Egész más miatt kellett egy korai gép esetén valamit megnézzek, és ha már kezembe került a BIOS-a megnéztem a képernyő meghajtó BIOS szubrutinokat MUL és ADD utasítás van benne. Nyilván egy soron belül azt használja amit ide böffentettél. De az új sor, és a "menj a képernyő X. sor Y. pozícióra" ott MUL és ADD van.

5./ Érdemes általános megoldásokat használni. Ami működik akár karakteres, de akár egy 10K felbontású képernyőn is.

dec. 22. 23:23
Hasznos számodra ez a válasz?
 79/86 anonim ***** válasza:
4%

Lásd be végre, nem való ez neked, 23:23-as. Vérszegény vagy, ötletszegény vagy.


Leírtam, hogy a képernyő bármely pozíciója kiszámítható, ergo, bárhova tudod a kurzort pozicionálni.

Az egy dolog, hogy a régi, soros terminálok működését emulálva erre nincs sem szükség, sem lehetőség, hiszen a kiírás sorfolytonos, egy korábbi sorba, vagy soron belüli pozícióra visszatérni nem lehetséges. Amit elvársz, azt én nem igértem sehol, de ettől függetlenül a te óhajod (posXY) is teljesül, hiszen az X és Y pozíció kinyerhető a tömbindexből és a terminal-width konstansból.


Y - tombindex DIV CONST

X - tombindex MOD CONST

dec. 22. 23:53
Hasznos számodra ez a válasz?
 80/86 anonim ***** válasza:
75%
"Leírtam, hogy a képernyő bármely pozíciója kiszámítható, ergo, bárhova tudod a kurzort pozicionálni." Csak korábban azt hazudtad, hogy ez kiszámolható szorzás és össszeadás nélkül. Erre továbbra se mutattál semmit, hogy egy tetszőleges pozíciótól kezdve tudunk írni a képernyőre. Majd mindenkit hülyének nézel, hogy a DIV és a MOD az teljesen más. Persze, a szorzás és az "összeadás" megfordítása. Tudjuk megint egy h. szembe megyen az autópályán...
dec. 23. 00:00
Hasznos számodra ez a válasz?
1 2 3 4 5 6 7 8 9

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!