Прямой доступ к памяти
В Borland Pascal реализованы три предопределенных массива Mem, MemW и MemL, которые используются для прямого доступа к па- мяти. Каждый компонент массива Mem представляет собой байт, каж- дый компонент массива MemW - слово, а каждый компонент MemL - значение длинного целого типа (Longint).
Для индексирования массива Mem используется специальный син- таксис. Два выражения целочисленного типа Word, разделенные запя- тыми, используются для задания базового сегмента и смещения ячей- ки памяти, к которой производится доступ. Например:
Mem[$0040:$0049] := 7; Data := MemW[Seg(V):Ofs(V)]; MemLong := MemL[64:3*4];
Первый оператор записывает значение 7 в байт по адресу $0040:$0049. Второй оператор помещает значение типа Word, запи- санное в первые 2 байта переменной V, в переменную Data. Третий оператор помещает значение типа Longint, записанное по адресу $0040:$000C, в переменную MemLong.