====== числа ====== ===== целые числа ===== ==== двоичное представление ==== ''0b'' - префикс, обозначающий, что число записано в двоичном виде. 49 = 32+16+1 = 25+24+20 = 0b110001 Нумерация битов:\\ <- старшие разряды\\ младшие разряды -> ==== шестнадцатеричное представление ==== ''0x'' - префикс, обозначающий, что число записано в шестнадцатеричном виде. 0000 0 1000 8 0001 1 1001 9 0010 2 1010 a 0011 3 1011 b 0100 4 1100 c 0101 5 1101 d 0110 6 1110 e 0111 7 1111 f Пример: 42 = 0b00101010 = 0x2A ===== знаковые числа ===== ==== twos complement representation ==== Для обозначения знака числа используется тн //Two's complement representation// (два-дополнительный код). Это когда старший бит - знаковый. ++++пример| для примера, 4-разрядные (4-битные) числа: Биты Число 0000 0 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 -8 1001 -7 1010 -6 1011 -5 1100 -4 1101 -3 1110 -2 1111 -1 ++++ ф-ла для *-1:\\ ''-x = x¯+1''\\ пример:\\ ''-0001 = 0001¯+1= 1110+1 = 1111'' ==== sign-magnitude ==== Реже используемое представление знаковых чисел:\\ Первый бит - бит знака, а в остальных битах модуль числа. (В таком представлении есть отдельно +0 и -0.) ===== разрядность ===== Разрядность числа - это количество цифр, из которых оно состоит. 8 бит'ная ячейка: 0b00000000 = 0 0b11111111 = 255 16 бит'ная ячейка: 0b0000000000000000 = 0 0b1111111111111111 = 65535