OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 18.04.2024, 21:51

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 17 ]  Přejít na stránku Předchozí  1, 2
Autor Zpráva
PříspěvekNapsal: 23.05.2020, 18:56 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3661
Bydliště: Bratislava
Has thanked: 373 times
Been thanked: 795 times
dex píše:
Martin8bity píše:
Mne teda celkem zaujalo, ze ty assemblerovy zdrojaky jsou generovany z jinych zdrojaku a pouzivali na to nejaky CPU translator. Ten bych docela chtel videt.
Byl to jen převod ze zdrojáků pro 8080 do 8086.
Ano, presne tak. O rade procesorov Intel x86 je zname, ze pri navrhu noveho sa navrhari snazia o spetnu kompatibilitu tak, aby program, napisany na starsi typ x86, bol schopny bezat aj na novsom x86. To je tiez jeden z dovodov, preco aj najnovsie najmodernejsie 64-bitove core I <cislo> maju stale moznost spustat programy v (totalne zastaralom) 16-bitovom rezime 8086.

Ale pozor, malokto uz vie (resp. si pameta), ze tato spetna kompatibilita zacina uz pri velmi dobre znamom osembitovom procesore 8080. Existovalo vela programov napisanych v asembleri pre 8080 (napr. v ramci spominaneho CP/M) a bola by skoda toto vsetko zahodit, Intel sa vtedy rozhodol, ze svoj novy moderny 16-bitovy 8086 navrhne tak, aby bolo na nom mozne prevadzkovat aj vsetky tieto stare programy pisane pre 8080 ! Kedze zachovanie binarnej kompatibility (ktora je napr. medzi 8080 a Z80) by pri prechode z 8 na 16-bitovu architekturu uz nebolo dost dobre mozne (resp. bolo ale zbytocne by to obmedzovalo vykon), rozhodol sa, ze zachova spetnu kompatibilitu aspon na urovni zdrojakov. To znamena, ze 8086 navrhol tak, aby bolo mozne automatickymi prostriedkami priamo previest, cize ludsky povedane jednoducho skompilovat program v asembleri 8080 na zdrojak 8086 a kod, ktory bezi priamo na 8086.

Je pravda, ze 8086 ma ine registre a ine instrukcie, ale ked si pozorne porovnate architekturu 8080 a 8086, najdete tu velku podobnost, vdaka ktorej mozno kazdu instrukciu 8080 skompilovat priamo na nejaku instrukciu 8086, a tym vytvorit programovy kod, ktory v ramci jedneho 64kB segmentu robi to iste, ako v 64kB pameti pri 8080.

Preto sa v roznych starych zdrojakoch 8086 casto vyskytuju rozne casti, ktore vznikli automatickym prevodom zo starsich zdrojakov 8080.


Nahoru
 Profil  
 
PříspěvekNapsal: 24.05.2020, 00:02 
Online
Óm Nejvyšší
Uživatelský avatar

Registrován: 07.07.2019, 22:14
Příspěvky: 3815
Has thanked: 280 times
Been thanked: 456 times
ub880d píše:
mozno by si mal prestat vymyslat a radsej trochu popatrat ako je zx basic riadok v pamati vlastne ulozeny. ako nic v zlom, ale niekto neznaly ta moze zobrat vazne a zacat sirit tieto nicim nepodlozene bludy ;] a okrem ineho.. v ktorej galaxii plati, ze 256+32256 bajtov je 4288 bajtov?


Já myslím že je to hned vedle galaxie far far away kde se bojuje světelnými meči a fyzika se krčí v koutě, očekávaje pravidelné bití. :D

Jak k tomu došlo přesně nevím, já potom od počítače odešel. Ale zcela jistě v tom jsou zakomponovaní dva malí draci co mi tu museli ukazovat že to co bylo ke zlobení včera už je opět překonaná meta. A píšu teď pomocnou utilitku pro práci s PMD 85 a PP01 tak jsem se popravdě taky mohl upsat číslem řádku do komentáře... Jak je vidět, v souladu s dobrou programátorskou praxí při vývoji čísluji striktně po desítkách a štábní kultura, to jsem celý já :mrgreen: Ono když to už běhá tak je na učesání čísel řádků a rozsahovou komprimaci času dost...

Jinak samozřejmě nic ve zlém, máte pravdu, počítače coby silně exaktně definovaný obor se špatně "okecávají" ale smyslem sdělení bylo jen konstatování že i tak "malý" rozsah je pro odladěný program zcela dostatečný protože mnohem dříve vám dojde RAM než řádky...

Na druhou stranu vzhledem k rychlosti objevení se zde detailního popisu problematiky mám silné tušení že jediná osoba se šancí podlehnout tu nějakým bludům jsem tak akorát já a vzhledem ke vstupnímu sítu sem bych se zvýšenému výskytu pomatenců běhajících mojí vinou po světě nebál.


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 17 ]  Přejít na stránku Předchozí  1, 2

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 2 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz