Emulyatorni Qanday Yozish Kerak

Mundarija:

Emulyatorni Qanday Yozish Kerak
Emulyatorni Qanday Yozish Kerak

Video: Emulyatorni Qanday Yozish Kerak

Video: Emulyatorni Qanday Yozish Kerak
Video: PS2 BEPUL MC BOOT BOSHQARMASIZ OYINLARNI DISK OYINLARINI OZINDAGI Qattiq diskdan 2024, Aprel
Anonim

Emulyatsiya - bu ma'lum bir tizimdagi qurilmani taqlid qilishga urinish. Emulyatorlarni yaratishning uchta usuli mavjud: dinamik va statik qayta kompilyatsiya va talqin. Ishlayotganda maksimal tezlik ta'siriga erishish uchun uchta usuldan ham foydalanish tavsiya etiladi. Oddiy protsessor emulyatorini yozish misolini ko'rib chiqamiz.

Emulyatorni qanday yozish kerak
Emulyatorni qanday yozish kerak

Ko'rsatmalar

1-qadam

Dasturlash tilini tanlang. Tavsiya etilgan va ehtimol yagona alternativ - bu C va Assembler. C-da siz boshqa platformalarga ko'chiriladigan kodni yaratishingiz mumkin. Tushunish nisbatan sodda va disk raskadrovka qilish oson, ammo boshqalarnikiga qaraganda ancha sekin. Assembler o'zining yuqori ish tezligi bilan ajralib turadi, u protsessor registrlaridan foydalanadi, bu dasturni qayta kompilyatsiya qilinadigan dasturga yaqinlashishiga yordam beradi. Biroq, undagi kodlarni kuzatish va tuzatish juda qiyin. Tanlangan tilni yaxshi bilish va tezlik uchun kodni yaxshi optimallashtirish muhimdir.

2-qadam

Tsiklik va dastur hisoblagichiga dastlabki qiymatni bering. Tsiklik hisoblagich uzilish sodir bo'ladigan soat tsikllari sonini hisoblaydi va dasturiy ta'minot kompyuterida keyingi opcode buyrug'i joylashgan xotira maydoni ko'rsatiladi.

3-qadam

Opcode-ni olganingizdan so'ng, opcode-ni loop hisoblagichidan bajarish uchun zarur bo'lgan soat tsikllari sonini chiqaring. Iltimos, ba'zi buyruqlar argumentlarga qarab Shomil soni bo'yicha farq qiladi. Bunday buyruqlar uchun keyinroq ishlaydigan koddagi hisoblagichni o'zgartiring.

4-qadam

Opcode muvaffaqiyatli bajarilgandan so'ng, uzilishlarni boshlash zarurligini tekshiring. Shu nuqtada, o'z vaqtida sinxronlashtirilishi kerak bo'lgan vazifalarni bajaring.

5-qadam

Tsiklning har bir o'tishini o'z ishini yakunlash zarurligini tekshiring. Dastur modulli bo'lishi kerakligini unutmang, chunki aksariyat kompyuterlar modullardan iborat va odatdagi emulyator, iloji bo'lsa, asl tizim bilan bir xil bo'lishi kerak. Bu dasturni tezroq va osonroq disk raskadrovka qilishni ta'minlaydi va siz turli xil emulyatorlar uchun bir xil modullardan foydalanishingiz mumkin, chunki ko'plab kompyuterlar bir xil protsessor yoki video protsessor modellariga asoslangan.

Tavsiya: