Zazazu
1

Чтение памяти выше 1 Мб в защищенном режиме

27.04.2011, 11:12. Показов 903. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!
Необходимо иметь доступ чтения/записи в память выше 1 Мб в защищенном режиме. Программа написана на с++ в Borland C++ 5.2, из которой осуществляется вызов функции написанной на ассемблере. При компиляции использую DOS расширитель DPMI (-WX). Таким образом программа сразу уже выполняется в защищенном режиме. В ассемблеровской функции необходимо чтение памяти выше 1 Мб, что сделать не получается. В функции определяю локальный дескриптор и базу сегмента:
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
;Функции DPMI управления дескрипторами
;INT 31h, AX = 0 - Выделить локальные дескрипторы
;Ввод: АХ = 0
;СХ = количество необходимых дескрипторов
;Вывод: если CF = 0, АХ = селектор для первого из заказанных дескрипторов
;Эта функция только выделяет место в таблице LDT, создавая в ней дескриптор сегмента данных с нулевыми базой и лимитом, так что пользоваться им пока нельзя.
mov ax, 0
mov cx, 8
int 31h
jc errorik
jmp endik
errorik:
mov ax,1234h
endik:
mov selector, ax
 
 
 
;INT 31h, AX = 6 - Определить базу сегмента
;Ввод: АХ = 6
;ВХ = селектор
;Вывод: если CF = 0, CX:DX = 32-битный линейный адрес начала сегмента
mov ax, 6
mov bx, selector
int 31h
jc errorik2
jmp endik2
errorik2:;
mov ax,3456h
endik2:
 
mov  word ptr CXDX_seg[0],cx
mov  word ptr CXDX_seg[2],dx
Что делать дальше или вообще это не правильный подход, подскажите пожайлуста.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.04.2011, 11:12
Ответы с готовыми решениями:

Обращения к памяти при выполнении POP DS в защищенном режиме
Какие обращения к памяти осуществляются при выполнении POP DS В защищенном режиме МП Intel x86?

Получить значение памяти в реальном режиме выше FFFFh
Меня не покидает идея создания своей ОС. Появилось свободное время, изучаю архитектуру компьютера....

Прерывания в защищенном режиме
Помогите пожалуйста разобраться с прерываниями в защищенном режиме.Какие обращения к памяти есть....

Память в защищенном режиме
Всем доброго дня! Я, наконец, сдал основные экзамены и теперь снова могу заняться столь интересным...

0
27.04.2011, 11:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.04.2011, 11:12
Помогаю со студенческими работами здесь

Принципы адресации в защищенном режиме
Здраствуйте, давно когда начинал заниматься ассемблером не разобрался с одним вопросом ... начал...

Не обрабатываются прерывания в защищенном режиме
Здравствуйте! Помогите, пожалуйста, найти и исправить ошибку. Программа должна переводить...

Программирование видеокарты в защищённом режиме
Перерыл пол инета, не нашел ничего. начал изучать assembler не очень давно. книги по...

Работа с файлами в защищенном режиме
Здравствуйте, я взялся писать ОС, уже готов загрузчик переводящий в защищенный режим процессор, IDT...

Удаленный доступ в защищенном режиме
Обычный удаленный доступ: Ввожу IP, пользователя и пароль, а затем подключаюсь. Мне не нравится,...

Вывод сообщения в защищенном режиме
.386p rmcode segment para public 'CODE' use16 assume cs:rmcode,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru