TURBO PASCAL

Новости           

Программы

Turbo Pascal

Игры

Документация

"Странности"

FAQ

Ссылки

Благодарности

От автора

 

> 2.3.2 Как работать с отдельными битами

A:> Вариантов огромное кол-во. Imho наиболее просто пользоваться логическими функциями OR и AND. Hапример:
Включить(сделать единицей =) первый бит в переменной b
b:=b or 1;
Включить второй бит в переменной b
b:=b or 2;
третий:
b:=b or 4;
Для проверки включённости бита можно юзать AND. То есть выражение (b and 1 <> 0) будет true, если первый бит включён. Думаю, идея ясна, а извращаться можно уж как угодно:
писать функции и процедуры, что тоже есть рулез.

Другой вариант выключения/сброса бита

procedure SetBit(var B : Byte; BitNo : Byte);
begin
B := B or ($01 shl BitNo);
end;
procedure ResetBit(var B : Byte; BitNo : Byte);
begin
B := B and (not ($01 shl BitNo));
end;

На первую страницу
Rambler's Top100 Яндекс цитирования Rambler's Top100 PROext: Top 1000

(с)Все права защищены

По всем интересующим вопросампрошу писать на электронный адрес

Hosted by uCoz