Изменение порядка следования бит внутри байта

32-хprocedure ChangeOrderBit;
16-тиprocedure ChangeOrderBit;

Процедура изменяет порядок следования бит внутри байта (рисунок 2) при выполнении операций чтения или записи в файл. Процедура должна вызываться  сразу после открытия файла.   Стандартный порядок следования (рисунок 1) устанавливается при открытии файла. Вернуть порядок следования бит в стандартное состояние повторным вызовом процедуры нельзя.
32-х Var BitStr: TBitFile;{Объявление переменной}


BitStr := TBitFile.Create; {Выделение памяти}
BitStr.OpenBitFile('a.d', btCreate,bt16); {Открытие файла “a.d”}
BitStr.ChangeOrderBit; {Изменение порядка следования бит в байте}
BitStr.CloseBitFile; { Закрытие обрабатываемого файла}
BitStr.Free; {Освобождение памяти}

16-ти Var BitStr: PBitFile; {Объявление переменной}


BitStr := New(PBitFile,Init(38,512)); {Выделение памяти}
BitStr^.OpenBitFile ('aa',btCreate); {Открытие файла “aa”}
BitStr^.ChangeOrderBit; {Изменение порядка следования бит в байте}
BitStr^.CloseBitFile; {Закрытие обрабатываемого файла}
Dispose(BitStr,Done); {Освобождение памяти}

 
1 байт 2 байт 3 байт
 0 1 2 3 4 5 6 7  8 9101112131415 1617181920212223

Порядок расположения бит в массиве данных файла