Оберненим кодом числа NM=1a1a2…an називається таке машинне зображення числа для якого ai=0 якщо воно дорівнювало "1" і навпаки, аi=1, якщо воно дорівнювало "0".
Інакше, оберненим кодом двійкового числа є інверсне зображення цього числа, тобто всі розряди початкового бінарного числа, приймають обернене значення.
Інверсія, інвертування - процедура переходу до протилежного значення розрядів числа в двійковій системі: інверсія «0» дає «1»; інверсія «1» дає «0». Позначається знаком риски –(або хвил і~, ін.) над числом, його розрядами.
Приклад: N=-101110 (природний запис), то Nмоб=1 10001 (машинний запис в оберненому звичайному коді).
Узагальнюючи правила утворення оберненого коду на всі основи систем числення можна вважати, що обернений код негативного числа виходить при відніманні з (q-1) цифр по кожному розряду числа за винятком знакових розрядів, які замінюються значенням (q-1) тобто:
Приклад: а) -0,286357(10)(природний) ↔ 1,286357(10)пр (машинний прямий) ↔ 9,713642(10)об(машинний обернений).
б) -0,1010111101(2)пр↔ 1,0101000010(2)об
Особливо звернути увагу: якщо в знаковому розряді машинного запису знаходиться (q-1) - тобто число негативне, то всі цифри числа, виключаючи знаковий, замінюються вирахуванням з (q-1) значення розряду;
якщо в знаковому розряді знаходиться нуль - тобто число позитивне, то перетворення не проводяться.
Приклади: (записи наведено без слеша «», іноді його може заміняти крапка, кома або інший знак):
Перехід від оберненого коду до прямого проводиться за аналогічним правилом: із значення (q-1) віднімається значення по кожному розряду, окрім знакових (що остаються незмінними).
Для бінарної системи числення (просто щасливий випадок), можна перейти до прямого коду простим інвертуванням розрядів оберненого коду, окрім розрядів знаків.
|