Kako Napisati Emulator

Sadržaj:

Kako Napisati Emulator
Kako Napisati Emulator

Video: Kako Napisati Emulator

Video: Kako Napisati Emulator
Video: ВСЕ КОДЫ на ДЕНЬГИ в VEHICLE SIMULATOR ROBLOX! Покупаем McLaren P1 и BMW M6! 2024, Novembar
Anonim

Emulacija je pokušaj imitiranja uređaja na određenom sistemu. Postoje tri načina za izgradnju emulatora: dinamička i statička rekompilacija i interpretacija. Da bi se postigao maksimalan učinak brzine pri radu, preporučuje se upotreba sve tri metode. Razmotrimo primjer pisanja tipičnog emulatora procesora.

Kako napisati emulator
Kako napisati emulator

Instrukcije

Korak 1

Odaberite programski jezik. Preporučena i vjerovatno jedina alternativa su C i Assembler. U C-u možete napraviti kôd koji će se prenositi na druge platforme. Razmjerno je jednostavan za razumijevanje i jednostavan za otklanjanje pogrešaka, ali mnogo sporiji od ostalih. Asembler se odlikuje velikom brzinom rada, koristi registre procesora, što doprinosi približavanju programa onom za ponovno sastavljanje. Međutim, vrlo je teško pratiti i popraviti kodove u njemu. Važno je dobro znati izabrani jezik i dobro optimizirati kod za brzinu.

Korak 2

Dodijelite početnu vrijednost cikličkom i programskom brojaču. Ciklični brojač broji broj ciklusa takta nakon kojih dolazi do prekida, a softverski računar prikazuje područje memorije u kojem se nalazi sljedeća uputa opcodea.

Korak 3

Nakon što primite opcode, od brojača petlji oduzmite broj ciklusa takta potrebnih za izvršavanje opcodea. Imajte na umu da se neke naredbe razlikuju u broju krpelja, ovisno o argumentima. Za takve naredbe kasnije promijenite brojač u kodu izvođenja.

Korak 4

Nakon uspješnog izvršavanja opcode-a, provjerite potrebu za pokretanjem prekida. U ovom trenutku dovršite zadatke koji hitno trebaju biti sinkronizirani na vrijeme.

Korak 5

Provjerite svaki prolazak ciklusa da li treba dovršiti njegov rad. Imajte na umu da bi program trebao biti modularan, jer se većina računara sastoji od modula, a tipični emulator trebao bi, ako je moguće, biti isti kao i originalni sistem. To će omogućiti brže i lakše otklanjanje pogrešaka u programu, a moći ćete koristiti iste module za različite emulatore, jer se mnogi računari temelje na istim modelima procesora ili video procesora.

Preporučuje se: