Ինչպես գրել էմուլատոր

Բովանդակություն:

Ինչպես գրել էմուլատոր
Ինչպես գրել էմուլատոր

Video: Ինչպես գրել էմուլատոր

Video: Ինչպես գրել էմուլատոր
Video: Девочка — шашлычок ► 1 Прохождение Silent Hill Origins (PS2) 2024, Ապրիլ
Anonim

Էմուլյացիան որոշակի համակարգի վրա սարքը նմանակելու փորձ է: Էմուլատորներ կառուցելու երեք եղանակ կա `դինամիկ և ստատիկ վերամշակում և մեկնաբանություն: Աշխատելիս առավելագույն արագության ազդեցությանը հասնելու համար խորհուրդ է տրվում օգտագործել բոլոր երեք մեթոդները: Եկեք քննարկենք տիպիկ պրոցեսորային էմուլատոր գրելու օրինակ:

Ինչպես գրել էմուլատոր
Ինչպես գրել էմուլատոր

Հրահանգներ

Քայլ 1

Ընտրեք ծրագրավորման լեզու: Առաջարկվող և հավանաբար միակ այլընտրանքը C- ն ու Assembler- ն են: C- ում դուք կարող եք կազմել կոդ, որը կտեղափոխվի այլ հարթակներ: Հասկանալը համեմատաբար պարզ է և սխալ կարգաբերել, բայց շատ ավելի դանդաղ է, քան մյուսները: Մոնտաժողն առանձնանում է իր աշխատանքի մեծ արագությամբ, այն օգտագործում է պրոցեսորային ռեգիստրներ, ինչը նպաստում է ծրագրի մոտավորմանը մինչև նոր կազմելը: Այնուամենայնիվ, շատ դժվար է դրանում կոդեր հետևել և ամրագրել: Կարևոր է լավ իմանալ ընտրված լեզուն և արագ օպտիմալացնել կոդը:

Քայլ 2

Նախնական արժեք նշանակեք ցիկլային և ծրագրի հաշվիչին: Cycիկլային հաշվիչը հաշվում է ժամացույցի ցիկլերի քանակը, որից հետո տեղի է ունենում ընդհատումը, և ծրագրային ապահովման համակարգիչը ցույց է տալիս հիշողության տարածքը, որում ընկած է օպկոդի հաջորդ հրահանգը:

Քայլ 3

Օպկոդն ստանալուց հետո օղակի հաշվիչից հանեք ժամացույցի ցիկլերի քանակը, որոնք անհրաժեշտ են օպկոդի գործարկման համար: Խնդրում ենք նկատի ունենալ, որ որոշ հրամաններ տարբերվում են տիզերի քանակով ՝ կախված փաստարկներից: Նման հրամանների համար ավելի ուշ փոխեք հաշվիչը գործարկման կոդի մեջ:

Քայլ 4

Օպկոդի հաջող կատարումից հետո ստուգեք ընդհատումներ հրահրելու անհրաժեշտությունը: Այս պահին լրացրեք այն առաջադրանքները, որոնք անհապաղ պետք է ժամանակին համաժամեցվեն:

Քայլ 5

Ստուգեք ցիկլի յուրաքանչյուր անցում `իր աշխատանքը ավարտելու անհրաժեշտության համար: Հիշեք, որ ծրագիրը պետք է լինի մոդուլային, քանի որ համակարգիչների մեծ մասը բաղկացած է մոդուլներից, և տիպիկ էմուլյատորը, հնարավորության դեպքում, պետք է լինի նույնը, ինչ բուն համակարգը: Սա կապահովի ծրագրի ավելի արագ և հեշտ կարգաբերում, և դուք կկարողանաք օգտագործել նույն մոդուլները տարբեր emulators- ի համար, քանի որ շատ համակարգիչներ հիմնված են պրոցեսորների կամ վիդեո պրոցեսորների նույն մոդելների վրա:

Խորհուրդ ենք տալիս: