Побитовые инструкции и сдвиги
Освойте работу с битами в x86: AND, OR, XOR, NOT, а также инструкции сдвига и циклического сдвига, используемые для маскирования, переключения флагов и быстрого умножения.
«Побитовые инструкции и сдвиги» — бесплатный урок Assembly Language & x86 Low-Level Systems Programming на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Assembly Language & x86 Low-Level Systems Programming, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Assembly Language & x86 Low-Level Systems Programming содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Why Bit Operations?
Low-level code constantly manipulates individual bits: setting flags, packing fields, masking, and fast math. x86 provides dedicated bitwise and shift instructions.
AND for Masking
AND keeps only the bits set in both operands, the standard way to mask out unwanted bits.
and eax, 0x0F ; keep low nibbleOR for Setting Bits
OR forces specific bits to 1 while leaving others unchanged.
or eax, 0x80 ; set bit 7XOR for Toggling
XOR flips bits where the mask is 1. A famous idiom zeroes a register quickly:
xor eax, eax ; eax = 0NOT for Inversion
NOT flips every bit (ones complement).
not eaxLogical Shift Left (SHL)
SHL shifts bits left, filling with zeros. Each shift left multiplies an unsigned value by two.
shl eax, 1 ; eax = eax * 2Logical Shift Right (SHR)
SHR shifts right with zero fill, dividing an unsigned value by powers of two.
shr eax, 2 ; unsigned eax / 4Arithmetic Shift (SAR)
SAR shifts right but preserves the sign bit, so it divides signed values correctly.
sar eax, 1 ; signed eax / 2Rotate Instructions
ROL and ROR rotate bits around, wrapping the bit that falls off back in on the other side, used in hashing and crypto.
rol eax, 4Bit Test Instructions
BT copies a chosen bit into CF so you can test it, while BTS/BTR test and set/reset it.
bt eax, 3 ; CF = bit 3 of eaxCommon Idioms
Handy patterns:
xor reg, regto zeroshl/shrfor power-of-two mathand reg, maskto extract fields
Quick Check
Test your understanding of bit operations.
Recap
You learned bitwise and shift instructions:
- AND mask, OR set, XOR toggle, NOT invert
- SHL/SHR for unsigned power-of-two math
- SAR preserves sign for signed division
- ROL/ROR rotate; BT tests a bit into CF
Часто задаваемые вопросы
Урок «Побитовые инструкции и сдвиги» бесплатный?
Да — полный текст урока «Побитовые инструкции и сдвиги» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Assembly Language & x86 Low-Level Systems Programming, подпишись на CoddyKit PRO. Курс Assembly Language & x86 Low-Level Systems Programming содержит 4 уроков всего.
Чему я научусь в уроке «Побитовые инструкции и сдвиги»?
Освойте работу с битами в x86: AND, OR, XOR, NOT, а также инструкции сдвига и циклического сдвига, используемые для маскирования, переключения флагов и быстрого умножения. Ты практикуешь Assembly Language & x86 Low-Level Systems Programming с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Assembly Language & x86 Low-Level Systems Programming?
Предыдущий опыт не требуется. Assembly Language & x86 Low-Level Systems Programming на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Побитовые инструкции и сдвиги»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Assembly Language & x86 Low-Level Systems Programming?
Да. Каждый урок Assembly Language & x86 Low-Level Systems Programming включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Инструкции перемещения данных (MOV, PUSH, POP)
- Арифметические и логические операции
- Условные переходы и циклы
- Побитовые инструкции и сдвиги