Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.16;
Скачать: CL | DM;

Вниз

Что бы это могло означать,помогите тупому.   Найти похожие ветки 

 
Gorger ©   (2005-09-27 18:58) [0]

Для решения задачи взаимоисключения использовать функцию MS DOS
   5С прерывания 21. Параметры функции:

       AH=5C                     номер функции
       AL=0 (lock) 1 (unlock)    действие
       BH=handle                 системный номер файла
       CX:DX=offset CX*65536+DX  смещение области
       SI:DI=length SI*65536+DI  размер областиl


курсивом выделен непонятный мне фрагмент. Так что же следует забить в CX:DX & SI:DI


 
palva ©   (2005-09-27 23:23) [1]

Четырехбайтовое число хранится в двух двубайтовых регистрах. В DX младшие байты, в CX - старшие. Ну то есть надо взять смещение области и разделить его с остатком на 65536 Частное положить в CX, остаток в DX. То же для размера области. Наверно так.


 
Gorger ©   (2005-09-28 00:13) [2]

Спасибо, я понял! Я просто одновременно думал о том как взять это смещение и как его записать в регистрах. Вот и получилась в голове каша.



Страницы: 1 вся ветка

Текущий архив: 2005.10.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.032 c
8-1116800582
ALL
2005-05-23 02:23
2005.10.16
Звуковой поток


2-1126642440
markon
2005-09-14 00:14
2005.10.16
Вызов функции, написанной в одном модуле из другого модуля


8-1116500972
poo
2005-05-19 15:09
2005.10.16
воспроизведение wave


3-1125470679
MakNik
2005-08-31 10:44
2005.10.16
Оптимизация запроса...


2-1125398819
FXeS
2005-08-30 14:46
2005.10.16
Динамические массивы