Jak Napsat Emulátor

Obsah:

Jak Napsat Emulátor
Jak Napsat Emulátor

Video: Jak Napsat Emulátor

Video: Jak Napsat Emulátor
Video: ОБЗОР эмулятора ДПКВ через компьютер 2024, Duben
Anonim

Emulace je pokus o napodobení zařízení na konkrétním systému. Existují tři způsoby, jak vytvořit emulátory: dynamická a statická rekompilace a interpretace. K dosažení maximálního efektu rychlosti při práci se doporučuje použít všechny tři metody. Zvažme příklad psaní typického emulátoru procesoru.

Jak napsat emulátor
Jak napsat emulátor

Instrukce

Krok 1

Vyberte programovací jazyk. Doporučenou a pravděpodobně jedinou alternativou jsou C a Assembler. V jazyce C můžete vytvořit kód, který bude přenesen na jiné platformy. Je to poměrně jednoduché na pochopení a snadné ladění, ale mnohem pomaleji než ostatní. Assembler se vyznačuje vysokou rychlostí práce, používá registry procesorů, což přispívá k přiblížení programu k překompilování. Je však velmi obtížné v něm sledovat a opravovat kódy. Je důležité dobře znát zvolený jazyk a optimalizovat kód podle rychlosti.

Krok 2

Přiřaďte počáteční hodnotu cyklickému a programovému čítači. Cyklické počítadlo počítá počet hodinových cyklů, po kterých dojde k přerušení, a softwarový počítač zobrazí oblast paměti, ve které leží další instrukce opcode.

Krok 3

Poté, co obdržíte operační kód, odečtěte počet hodinových cyklů potřebných k provedení operačního kódu z počitadla smyčky. Upozorňujeme, že některé příkazy se liší počtem značek v závislosti na argumentech. U takových příkazů změňte počítadlo v běhovém kódu později.

Krok 4

Po úspěšném provedení operačního kódu zkontrolujte potřebu spouštět přerušení. V tomto okamžiku dokončete úkoly, které je naléhavě nutné synchronizovat včas.

Krok 5

Zkontrolujte každý průchod cyklu, zda není nutné dokončit jeho práci. Nezapomeňte, že program by měl být modulární, protože většina počítačů je tvořena moduly a typický emulátor by měl být, pokud je to možné, stejný jako původní systém. To zajistí rychlejší a jednodušší ladění programu a budete moci používat stejné moduly pro různé emulátory, protože mnoho počítačů je založeno na stejných modelech procesorů nebo video procesorů.

Doporučuje: