Двійковий зсув,також згадується як зсув-К зсув -Н, надлишковий код — це цифрова схема кодування, де код з усіма нулями відповідає мінімальному негативному значенню, а код з усіма одиницями — максимальному позитивному значенню. Немає чіткого стандарту для двійкового зсуву, але найчастіше зміщення для n-бітового двійкового слова використовується як K = 2n−1. Це призводить до того, що значення «нуль» переходить в 1 у найбільш значущих бітах, і нуль — у всіх інших. В цілому, ця дія комфортна та зручна; все одно, що використовувати додатковий код (доповнення до 2), за винятком того, що найбільш значущий біт інвертується. Це також означає, що в операції логічного порівняння, людина отримує той же результат, що і з числовим порівнянням додаткового коду. Варто відзначити, що запис логічного порівняння аналогічна з числовим порівнянням додаткового коду, якщо тільки в порівнюваних числах однаковий знак. Від'ємні значення повинні бути не більше, ніж позитивні, інакше вони будуть інвертовані.
Такий зсув використовувався, наприклад, для запису експоненти числа з рухомою комою в комп'ютерах IBM System/360 і System/370. Старший біт одного байта містить знак мантиси; експонента прийняла форму семибітного числа зі зсувом на 64 (27-1). 8-розрядна експонента у [en] з рухомою комою, який використовується в різних мовах програмування в 1970-х і 1980-х років, була закодована за допомогою зсуву на 129.
Стандарт IEEE використовує різні розміри експоненти, а також позначення зсуву для формату кожної точності. Однак, замість того, щоб використовувати зсув 2n−1, він використовує зсув 2n−1− 1 (тобто зсув-15, зсув-127, зсув-1023, зсув-16383). Це означає, що інвертування ведучого (найбільшого) біта експоненти не перетворює показник ступеня для правильного запису додаткового коду.
Двійковий зсув часто використовується в цифровій обробці сигналів (ЦОС). У більшості аналого-цифрові (АЦП) і цифро-аналогових перетворювачів (ЦАП) однополярні мікросхеми. Це означає, що вони не можуть впоратися з [en] (сигнали як позитивні, так і негативні). Простим рішенням є зсув аналогових сигналів зі зміщенням постійного струму, що дорівнює половині перетвореного діапазону АЦП і ЦАП. Потім цифрові дані будуть отримані у двійковому форматі зсуву.
Більшість стандартних чипів ЦП комп'ютера не можуть обробляти двійковий зсув безпосередньо. Чипи ЦП, як правило, можуть обробляти тільки знакові й беззнакові цілі числа, а також значення з рухомою комою. Значення двійкового зсуву можуть бути оброблені декількома способами за допомогою цих чипів ЦП. Дані можуть розглядатися просто як цілі числа без знака, що змушує програміста розібратися зі зсувом нуля в програмному забезпеченні, або можуть бути перетворені в цілочисельний формат (який ЦП може обробляти спочатку), просто віднімаючи зсув нуля. В результаті, загальний зсув для N-розрядного слова — 2(n-1), де потрібно просто інвертувати перший біт в додатковий код, без дії віднімання. Це іноді є корисним спрощенням в обладнанні, і також може бути зручним у програмному забезпеченні.
Порівняльна таблиця двійкового зсуву для біта, з додатковим кодом.
Код двійкового зсуву , K = 8 | Десятковий код | Двійковий код |
---|---|---|
1111 | 7 | 0111 |
1110 | 6 | 0110 |
1101 | 5 | 0101 |
1100 | 4 | 0100 |
1011 | 3 | 0011 |
1010 | 2 | 0010 |
1001 | 1 | 0001 |
1000 | 0 | 0000 |
0111 | −1 | 1111 |
0110 | −2 | 1110 |
0101 | −3 | 1101 |
0100 | −4 | 1100 |
0011 | −5 | 1011 |
0010 | −6 | 1010 |
0001 | −7 | 1001 |
0000 | −8 | 1000 |
Двійковий зсув може бути перетворений в додатковий код — інвертуємо значущий біт. Наприклад, з 8-бітовим значенням застосовується операція XOR з 0×80 для того, щоб перетворити в додатковий код. У спеціалізованому обладнанні простіше зрозуміти його положення, але для цього слід застосовувати в перевернутому значенні.
Див. також
Примітки
- Chang, Angela; Chen, Yen; Delmas, Patrice (2006-03-07). «2.5.2: Data Representation: Offset binary representation (Excess-K)». COMPSCI 210S1T 2006 (PDF). Department of Computer Science, [ru], NZ. p. 18. Retrieved 2016-02-04.
- Chang, Angela; Chen, Yen; Delmas, Patrice (2006-03-07). «2.5.2: Data Representation: Offset binary representation (Excess-K)». COMPSCI 210S1T 2006 (PDF). Department of Computer Science, The University of Auckland, NZ. p. 18. Retrieved 2016-02-04.
- IBM System/360 Principles of Operation Form A22-6821. Various editions available on the WWW.
- Electrical and Computer Science Department, [en], North Dartmouth, MA, USA (1988). Chen, Chi-hau, ed. Signal Processing Handbook. New York, USA:[en]/CRC Press. ISBN 0-8247-7956-8. Retrieved 2016-02-04.
- «Data Conversion Binary Code Formats» (PDF). [ru] (published 2000). May 1997. AN9657.1. Retrieved 2016-02-04.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Ne plutati z Bitovij zsuv Dvijkovij zsuv takozh zgaduyetsya yak zsuv K zsuv N nadlishkovij kod ce cifrova shema koduvannya de kod z usima nulyami vidpovidaye minimalnomu negativnomu znachennyu a kod z usima odinicyami maksimalnomu pozitivnomu znachennyu Nemaye chitkogo standartu dlya dvijkovogo zsuvu ale najchastishe zmishennya dlya n bitovogo dvijkovogo slova vikoristovuyetsya yak K 2n 1 Ce prizvodit do togo sho znachennya nul perehodit v 1 u najbilsh znachushih bitah i nul u vsih inshih V cilomu cya diya komfortna ta zruchna vse odno sho vikoristovuvati dodatkovij kod dopovnennya do 2 za vinyatkom togo sho najbilsh znachushij bit invertuyetsya Ce takozh oznachaye sho v operaciyi logichnogo porivnyannya lyudina otrimuye toj zhe rezultat sho i z chislovim porivnyannyam dodatkovogo kodu Varto vidznachiti sho zapis logichnogo porivnyannya analogichna z chislovim porivnyannyam dodatkovogo kodu yaksho tilki v porivnyuvanih chislah odnakovij znak Vid yemni znachennya povinni buti ne bilshe nizh pozitivni inakshe voni budut invertovani Takij zsuv vikoristovuvavsya napriklad dlya zapisu eksponenti chisla z ruhomoyu komoyu v komp yuterah IBM System 360 i System 370 Starshij bit odnogo bajta mistit znak mantisi eksponenta prijnyala formu semibitnogo chisla zi zsuvom na 64 27 1 8 rozryadna eksponenta u en z ruhomoyu komoyu yakij vikoristovuyetsya v riznih movah programuvannya v 1970 h i 1980 h rokiv bula zakodovana za dopomogoyu zsuvu na 129 Standart IEEE vikoristovuye rizni rozmiri eksponenti a takozh poznachennya zsuvu dlya formatu kozhnoyi tochnosti Odnak zamist togo shob vikoristovuvati zsuv 2n 1 vin vikoristovuye zsuv 2n 1 1 tobto zsuv 15 zsuv 127 zsuv 1023 zsuv 16383 Ce oznachaye sho invertuvannya veduchogo najbilshogo bita eksponenti ne peretvoryuye pokaznik stupenya dlya pravilnogo zapisu dodatkovogo kodu Dvijkovij zsuv chasto vikoristovuyetsya v cifrovij obrobci signaliv COS U bilshosti analogo cifrovi ACP i cifro analogovih peretvoryuvachiv CAP odnopolyarni mikroshemi Ce oznachaye sho voni ne mozhut vporatisya z en signali yak pozitivni tak i negativni Prostim rishennyam ye zsuv analogovih signaliv zi zmishennyam postijnogo strumu sho dorivnyuye polovini peretvorenogo diapazonu ACP i CAP Potim cifrovi dani budut otrimani u dvijkovomu formati zsuvu Bilshist standartnih chipiv CP komp yutera ne mozhut obroblyati dvijkovij zsuv bezposeredno Chipi CP yak pravilo mozhut obroblyati tilki znakovi j bezznakovi cili chisla a takozh znachennya z ruhomoyu komoyu Znachennya dvijkovogo zsuvu mozhut buti obrobleni dekilkoma sposobami za dopomogoyu cih chipiv CP Dani mozhut rozglyadatisya prosto yak cili chisla bez znaka sho zmushuye programista rozibratisya zi zsuvom nulya v programnomu zabezpechenni abo mozhut buti peretvoreni v cilochiselnij format yakij CP mozhe obroblyati spochatku prosto vidnimayuchi zsuv nulya V rezultati zagalnij zsuv dlya N rozryadnogo slova 2 n 1 de potribno prosto invertuvati pershij bit v dodatkovij kod bez diyi vidnimannya Ce inodi ye korisnim sproshennyam v obladnanni i takozh mozhe buti zruchnim u programnomu zabezpechenni Porivnyalna tablicya dvijkovogo zsuvu dlya bita z dodatkovim kodom Kod dvijkovogo zsuvu K 8 Desyatkovij kod Dvijkovij kod 1111 7 0111 1110 6 0110 1101 5 0101 1100 4 0100 1011 3 0011 1010 2 0010 1001 1 0001 1000 0 0000 0111 1 1111 0110 2 1110 0101 3 1101 0100 4 1100 0011 5 1011 0010 6 1010 0001 7 1001 0000 8 1000 Dvijkovij zsuv mozhe buti peretvorenij v dodatkovij kod invertuyemo znachushij bit Napriklad z 8 bitovim znachennyam zastosovuyetsya operaciya XOR z 0 80 dlya togo shob peretvoriti v dodatkovij kod U specializovanomu obladnanni prostishe zrozumiti jogo polozhennya ale dlya cogo slid zastosovuvati v perevernutomu znachenni Div takozhDodatkovij kod Dvijkova sistema chislennya Cifrova obrobka signaliv Predstavlennya chisel zi znakom Chislo z ruhomoyu komoyuPrimitkiChang Angela Chen Yen Delmas Patrice 2006 03 07 2 5 2 Data Representation Offset binary representation Excess K COMPSCI 210S1T 2006 PDF Department of Computer Science ru NZ p 18 Retrieved 2016 02 04 Chang Angela Chen Yen Delmas Patrice 2006 03 07 2 5 2 Data Representation Offset binary representation Excess K COMPSCI 210S1T 2006 PDF Department of Computer Science The University of Auckland NZ p 18 Retrieved 2016 02 04 IBM System 360 Principles of Operation Form A22 6821 Various editions available on the WWW Electrical and Computer Science Department en North Dartmouth MA USA 1988 Chen Chi hau ed Signal Processing Handbook New York USA en CRC Press ISBN 0 8247 7956 8 Retrieved 2016 02 04 Data Conversion Binary Code Formats PDF ru published 2000 May 1997 AN9657 1 Retrieved 2016 02 04