Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem assembler

Aj v 16bitovom mode mozes pouzivat 32bitovy offset. Ja sa teraz nebavim o prekladaci ale o tom co je mozne, samozrejme ze prekladac musi vediet prelozit instrukcie s 32bit parametrom (v 16bit kode pomocou prefixu v OPCODE).

Celkovo co mozes v programe robit zavisi ze kto PM zapol. Ak mas beziaci emm386 tak to je trochu problem - musel by si nejako ziadat emm386 aby si vedel kdesi pristupovat, nepamatam uz ako je emm386 rieseny. Ak bol CPU v realnom mode pri starte tak mas plnu kontrolu nad CPU a mozes sa sam prepnut do protected modu a pristupovat kam chces. Aj v 16bit kode. Nastavis si segmenty, ds, esi (mov esi,blabla) a pristupis si kam chces (mov ds:[esi], al alebo ax alebo eax). Prekladac samozrejme tie instrukcie musi vediet prelozit (vie to vacsina aj 16bitovych prekladacov, vcetne masm pre DOS apod.), a musis mat nastavene segmenty v 4GB pamatovom priestore (t.j. si v protected mode alebo v "big real" mode, big real mode je taky ze sa prepnes do protected modu tam sa nastavia 4GB segmenty a prepnes sa nazad do realneho modu, segment limity ostanu 4GB).

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny