xms pod dos
7 отговора
208 прегледа
xms pod dos
Kak pod DOS da pisha wyw wisokite adresi na pametta
imam predwid njakyde okolo A0000000.
10x predwaritelno
imam predwid njakyde okolo A0000000.
10x predwaritelno
Re: xms pod dos
[линк]
Ako tova ne ti stiga, moga da ti pratya edno modulche na C za DOS-ovskite kompilatori na Borland, deto sym pisal edno vreme.
BTW, chrez XMS (HIMEM.SYS) ne mojesh da dostypish tochno opredelen adres.
Ako tova ne ti stiga, moga da ti pratya edno modulche na C za DOS-ovskite kompilatori na Borland, deto sym pisal edno vreme.
BTW, chrez XMS (HIMEM.SYS) ne mojesh da dostypish tochno opredelen adres.
Re: xms pod dos
Bre maamu stara. Imashe njakakyw nachin, s dwe kletki, ednata e adresa a drugata dannite, ama ne pomnja kyde bjaha
trjabwa da pylnja RAM-a na edna videokarta........
trjabwa da pylnja RAM-a na edna videokarta........
Re: xms pod dos
CALL-151.hit.bg/REAL32.COM
puskas go ednokratno!
obace ne trebva d asi v zastiten rejim! t.e. da ne e pusnato nesot ot rod ana EMM386.
sed tova ti e dostapna celata pamet po normalen nacin:
SEGMENT:OFFSET
primerno:
MOV AL,[0ABCDEF12H]
cetes ot absoluten adres 0ABCDEF12H ako DS=0
puskas go ednokratno!
obace ne trebva d asi v zastiten rejim! t.e. da ne e pusnato nesot ot rod ana EMM386.
sed tova ti e dostapna celata pamet po normalen nacin:
SEGMENT:OFFSET
primerno:
MOV AL,[0ABCDEF12H]
cetes ot absoluten adres 0ABCDEF12H ako DS=0
Re: xms pod dos
0ABCDEF12
AB - 1
DC - 2
EF - 3
12 - 4
4*8=32bita!
specialno go broih kogato go pisah! :-)
mojebi te smustava 0 v nacaloto! mi prosto edno cislo nemoje da zapocva s bukva!
AB - 1
DC - 2
EF - 3
12 - 4
4*8=32bita!
specialno go broih kogato go pisah! :-)
mojebi te smustava 0 v nacaloto! mi prosto edno cislo nemoje da zapocva s bukva!
Re: xms pod dos
Da be, broil sym i H-a :))))
ama ja kaji koj saembler shte mi wzeme tolkowa dylgo chislo za ukazatel
i wsyshtnost, kak se pishe segment:otmestwane, pak li sys zastypwane kato pri 16 bitowoto adresirane
t.e., segmenta w DS li e samo ili w EDS......
abe, edin wid 0ABCDEF12 kak da go razdelja na segment i ofset
ama ja kaji koj saembler shte mi wzeme tolkowa dylgo chislo za ukazatel
i wsyshtnost, kak se pishe segment:otmestwane, pak li sys zastypwane kato pri 16 bitowoto adresirane
t.e., segmenta w DS li e samo ili w EDS......
abe, edin wid 0ABCDEF12 kak da go razdelja na segment i ofset
Re: xms pod dos
vseki assembler stava!
vzimas naprimer turboassembler, toia koito varvi s TURBO-PASCAL naprimer!
trebva da napravis slednoto obace:
t.e. da kajes na assemblrera ce procesora ti e 386
da kajes ce rabotis v 16bitov rejim
no kazvaiki "golemi cisla" ili razsireni registri toi st eti generira 32bit instrukcii!
nai lesno e slagas v segmenta 0 i otmestvaneto ti e fiziceskia adres.
mojes razbirase da polzvas koito si iskas segmenten registar!
tova ti e dostapno vinagi v realen rejim! samoce ako se opitas da izpolsvas otpestvane spriuamo segment >64K se generira izklucenie!
vaprosnata programka ti setva razmer na segmentite 4GB!
vzimas naprimer turboassembler, toia koito varvi s TURBO-PASCAL naprimer!
trebva da napravis slednoto obace:
.386P
CODE SEGMENT USE16
ASSUME CS:CODE, DS:CODE
ORG 100H
START:
MOV AX,0
MOV ES,AX
MOV AX,ES:[12345678]
MOV ES:[123565435+EAX],EBX
MOV ESI,455667789
MOV AL,ES:[ESI]
; I KAKVITO SI ISKAS TAM ADRESACII
ENDS
END START
t.e. da kajes na assemblrera ce procesora ti e 386
da kajes ce rabotis v 16bitov rejim
no kazvaiki "golemi cisla" ili razsireni registri toi st eti generira 32bit instrukcii!
nai lesno e slagas v segmenta 0 i otmestvaneto ti e fiziceskia adres.
mojes razbirase da polzvas koito si iskas segmenten registar!
tova ti e dostapno vinagi v realen rejim! samoce ako se opitas da izpolsvas otpestvane spriuamo segment >64K se generira izklucenie!
vaprosnata programka ti setva razmer na segmentite 4GB!
Редактирано от CALL-151 на