Главная страница
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.026 c
14-1127479695
oldman
2005-09-23 16:48
2005.10.16
Вот послали меня читать курсы...


2-1126169729
ГрэйМ
2005-09-08 12:55
2005.10.16
Реестр XP...


1-1127876176
Bigman
2005-09-28 06:56
2005.10.16
Как перенести Код из Visual Basic в Delphi?


1-1127814627
BaxTMaH
2005-09-27 13:50
2005.10.16
Клавиша Backspace


2-1125930393
PanKer
2005-09-05 18:26
2005.10.16
ShellExecute