Значит есть b:byte;
Как установить n-й бит в значение х ?
Либо какими командами ассемблера это можно сделать ?
asm
???
???
end;
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
| Scorp_Freeman |
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 68 Пол: Мужской Реальное имя: Сергей Репутация: 0 |
Значит есть b:byte;
Как установить n-й бит в значение х ? Либо какими командами ассемблера это можно сделать ? asm ??? ??? end; |
![]() ![]() |
| мисс_граффити |
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
asm asm смотря чему равен х... то есть, например, 110 and 011 даст 010 (установили первый бит в 0) 001 or 101 даст 101 (установили первый в 1) -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
| Scorp_Freeman |
Сообщение
#3
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 68 Пол: Мужской Реальное имя: Сергей Репутация: 0 |
Цитата смотря чему равен х... чему он будет равняться я не знаю, он будет постоянно меняться, а также номер бита который надо будет устанавливать также будет меняться. Мне нужно будет в байт к примеру ???????? на место второго бита поставить сооветствующий бит другого байта 000000?0. Если бы у меня второй байт был 111111?1 я бы просто использовал AND ( |
| hardcase |
Сообщение
#4
|
![]() code warrior ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 484 Пол: Мужской Реальное имя: Славен Репутация: 8 |
чему он будет равняться я не знаю, он будет постоянно меняться, а также номер бита который надо будет устанавливать также будет меняться. Мне нужно будет в байт к примеру ???????? на место второго бита поставить сооветствующий бит другого байта 000000?0. Если бы у меня второй байт был 111111?1 я бы просто использовал AND ( b1 := b1 or (b2 and (1 shl n)) добавил: у меня биты нумеруются с нуля. Сообщение отредактировано: hardcase - -------------------- ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
|
| Scorp_Freeman |
Сообщение
#5
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 68 Пол: Мужской Реальное имя: Сергей Репутация: 0 |
|
Scorp_Freeman Битовые операции 13.04.2007 22:18
hiv у меня биты нумеруются с нуля. И у меня с нуля :l… 13.04.2007 23:03
hardcase Как установить n-й бит в значение х ?
x := x or (1… 13.04.2007 22:49
Scorp_Freeman
Извените, я кажется ошибся в формулировке вопро… 13.04.2007 22:59
hardcase
Извените, я кажется ошибся в формулировке вопр… 13.04.2007 23:01
Scorp_Freeman спасибо !!! :blum: раздуплил наконец… 13.04.2007 23:16
мисс_граффити сорри... не удержалась.
bit:byte :good: 13.04.2007 23:05
hardcase Нда пока редактил решение, тут уже всё ответили =)… 13.04.2007 23:10![]() ![]() |
|
Текстовая версия | 7.11.2025 3:39 |