Можете също да преместите надясно
- в този случай при изместване с 1 цифра ще се извърши деление с 2, - изместване надясно с 2 цифри, ще се извърши деление с 4 и т.н.
Което е най-интересно, смяната може да се извърши и с десетични числа! Вземете същото число 1010 и го изместете наляво - т.е. добавяме допълнителна 0 от страната на ниския ред. Оказва се 10010 В основата на смяната операцията се извършва с основата на бройната система, която включва числото, върху което се извършват операциите на смяна.
В терминала, използвайки Python, можете също да извършите операция за преместване на числа.
Тази операция се извършва с помощта на оператора:
-"> " за преместване надясно
Ако приложите отместване към десетични числа в Python, тогава операцията се извършва чрез отместване на битове, т.е. десетичното число се преобразува в двоично, след което се прилага смяна и полученото число отново се преобразува в десетично.
Тези. ако напишем в терминала:
Вземете -12
За да приложите преместване към друга бройна система, трябва да използвате подходящата нотация. Например за двоично число:
За двоичния формат това твърдение също е вярно.
Ако число със знак +1 в двоичен формат се добави към -1, тогава резултатът трябва да бъде нула (резултатът ще бъде с препълване)
+ | +/- знак за цифра |
110 | |
-110 | |
010 |
+ | +/- знак за цифра |
310 | |
-310 | |
010 |
И още един пример
+ | +/- знак за цифра |
510 | |
-510 | |
010 |
Преобразуване на положително число в отрицателно
За да конвертирате положително двоично число в отрицателно, направете следното:
- в оригиналното число променяме всички нули на единици и единици на нули - добавяме 1към младшия байт
Например вземете положително двоично число0101 2 (510) и го направете отрицателно - променете единиците на нули и нулите на единици:1010 2 - добавете единица към най-малката цифра:1011 2
Ако говорим за ПОДПИСАНО двоично число (в което най-значимата цифра е знаковият индикатор: 0 е положително число, 1 е отрицателно), тогава резултатът ще съответства на -5 в десетичната бройна система
Вземете 01102 (610) и също променете знака му: - променете единиците на нули и нулите на единици: 10012 - добавете единица към най-малката цифра: 10102 (-610)
Изваждане на двоични числа (колона)
Помните ли как изваждаме числата по колона в нашата обичайна десетична бройна система?
Извадете десетичните числаИзвадете от десетичното число 10080 числото 1901 10080 - 1901 = 8179
Цифрите на номера са маркирани в червено
10080 - 1901 = 8179
Двоично изваждане
За изваждане по колона от двоични числа се прилагат същите правила, само числото 2 действа като заимствано число, а не 10, тъй като работим със стойността на двоичната бройна система - 2
Правилата за изваждане са същите: 0 - 0 = 0 0 - 1 = 1 и заема бита от най-значимия бит 1 - 0 = 1 1 - 1 = 0
1101110 (десетична 110)
- 10111 (десетична 23)
=1010111 (десетична 87)
Принципът на изваждане е следният:
- |
( 11010 ) |
( 2310 ) |
Нека анализираме процеса на изваждане по-подробно Битовите номера са показани в червено за яснота
Разборът е под разреза.
Проверете десетичната му стойност в терминала:
Оказва се87, което е вярно:110 - 23 = 87
Още няколко примера за двоично изваждане:
Десетичните еквиваленти са дадени в скоби.