![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Биты [D6, WinXP]
Инна © (2006-04-18 22:58:00)У меня есть байт как мне его разобрать на биты, тоесть узнать чему равен определенный бит в байте, помогите пожалуйста ни как немогу сделать.
Ega23 (2006-04-19 12:14:00) [1]
> А в 1800-м?
Нет, он не кратный 400 :о)
Плохиш (2006-04-19 12:09:00) [2]
> В байте восемь битов. А в каждом четвертом - девять, так
> как високосный.
А в 1800-м?
Игорь Шевченко (2006-04-19 11:41:00) [3]Плохиш © (19.04.06 10:25) [5]
> Ну, ведь в байте не три бита?
В байте восемь битов. А в каждом четвертом - девять, так как високосный.
balepa (2006-04-19 11:12:00) [4]
> Инна (18.04.06 22:58)
Вообще то этому в школе учат. Хотя бы с использованием div и mod.
Ega23 (2006-04-19 11:07:00) [5]Блин.
В смысле, shl и shr
Ega23 (2006-04-19 11:01:00) [6]
> Инна, учите двоичную систему счисления и логические операции
> AND, OR, NOT, XOR. Ибо они - рулез.
Плюс shl и ырк
balepa (2006-04-19 10:31:00) [7]
> Плохиш © (19.04.06 10:25) [5]
У Вас устаревшие сведения :)
Плохиш (2006-04-19 10:25:00) [8]
> Германн © (19.04.06 02:35) [3]
>
> > Юрий Зотов © (18.04.06 23:29) [2]
>
> Не понял суть "домашнего задания"
Ну, ведь в байте не три бита? Или?
SergP. (2006-04-19 07:06:00) [9]function GetBitFromByte(Source,nbit:byte):boolean;
begin
Result:=(Source shr nbit) and 1=1;
end;
Германн (2006-04-19 02:35:00) [10]
> Юрий Зотов © (18.04.06 23:29) [2]
Не понял суть "домашнего задания"
С учётом - "Инна, учите двоичную систему счисления и логические операции AND, OR, NOT, XOR. Ибо они - рулез."
Ну это так, offtop.
Юрий Зотов (2006-04-18 23:29:00) [11]Инна, учите двоичную систему счисления и логические операции AND, OR, NOT, XOR. Ибо они - рулез.
var
B: byte;
begin
B := что-то;
if B and 1 = 1 then
ShowMessage('Нулевой бит равен 1')
else
ShowMessage('Нулевой бит равен 0');
if B and 2 = 2 then
ShowMessage('Первый бит равен 1')
else
ShowMessage('Первый бит равен 0');
if B and 4 = 4 then
ShowMessage('Второй бит равен 1')
else
ShowMessage('Второй бит равен 0');
И т.д. Надеюсь, из этих примеров система стала понятна и осталось только придумать более элегантное решение, чем 8 операторов IF. Это Вам в качестве домашнего задания.
Eraser (2006-04-18 23:21:00) [12]
> Инна (18.04.06 22:58)
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=838