WWW.REFERATCENTRAL.ORG.UA - Я ТУТ НАВЧАЮСЬ

... відкритий, безкоштовний архів рефератів, курсових, дипломних робіт

ГоловнаІнформатика, Компютерні науки → Позиційні системи числення - Реферат

Позиційні системи числення - Реферат

запам'ятовуємо як перенос. І так рухаємося від молодшої цифри співмножника до старшої. Знайомо, чи не так?
У P-ковій системі відбувається те ж саме, тількиостачі беруться від ділення не на 10, а на P. Наприклад, у шістнадцятковій системі 5 8 при діленні на 16 дає остачу 8 і частку 2, тобто 5 8=28. У вісімковій системі
1234
7
11102
(4 7 при діленні на 8 дає 2 в остачі й 3 у переносі, 3 7+3 дає 0 і 3 тощо).
Множення на число, у якого більше однієї цифри, зводиться до множень на окремі цифри, запису результатів із зсувом та додавання у стовпчик. Наприклад, у вісімковій системі
77
123
275
176
77 .
12155
Аналогічно в шістнадцятковій системі
FE
20A
9EC
1FC .
205EC
Задачі
1. За заданими P та P-ковими записами чисел N указати їх десяткове подання:
а) P = 16, N = F1, FF, FFFE;
б) P = 8, N = 377, 1200;
в) P = 2, N = 1000, 1111, 11111111, 100000000.
г) P=36, N=ZY, 100 (36-кові цифри A, B, , Y, Z позначають десятковi числа 10, 11, , 34, 35 відповідно).
2. За десятковим записом чисел 32, 48, 100, 255, 640, 1024, 32767 указати їх 2-, 8-, 16-кові подання.
3. * Записати P-кове подання десяткових дробів d, де
а) d = 0.5, P = 2, 3, 5, 8, 16, 20;
б) d = 0.1, P = 2, 3, 5, 8, 16, 20.
4. * За основами P та P-ковими записами дробів указати їх десяткове подання:
а) P = 2; 0. 0001; 0. 1111; 0. 11111111;
б) P = 3; 0. 001; 0.22; 0.11;
в) P = 16; 0.1; 0. FF; 0.8; 0. (7).
5. Написати процедуру друкування цифр P-кового запису числа N, де 1 < P < 37,
а) N типу integer (цифри друкуються у зворотному порядку);
б) N типу integer (цифри друкуються у прямому порядку);
в) N має тип real, N<1 (друкується не більше, ніж R цифр дробової частини, де 0Уважати, що за P=36 числа від 10 до 35 позначено відповідно літерами від A до Z.
6. Означити таблиці додавання та множення однорозрядних P-кових чисел при P=2, 4, 8, 16. Написати програму друкування таких таблиць за P від 2 до 20.
7. Написати програму друкування таблиці символів, їх двійкових, шістнадцяткових та десяткових номерів.
2. Внутрішнє подання даних стандартних типів
2.1. Біт, байт та інші
У комп'ютері числа зберiгаються та обробляються в двiйковiй системі числення. Двійкова цифра 0 або 1 відображається станом елемента пам'яті, який вважається неподільним і називається бiтом. Послідовність із 8 бітів називається байтом. Байт своїми станами відображає 28=256 комбінацій із 0 та 1, а саме:
00000000
00000001
11111110
11111111
Множині цих комбінацій можна взаємно однозначно поставити у відповідність деякі множини значень: цілі числа від -128 до 127, або числа від 0 до 255, або пари 16-кових цифр, або символи від chr(0) до chr(255) чи якісь інші множини з 256 елементів.
У двох сусідніх байтах подаються 28 28=65536 комбінацій із 0 та 1. Їм взаємно однозначно ставляться у відповідність цілі числа від 0 до 65535, або числа від -32768 до 32767 чи інші множини з 65536 елементів.
Аналогічно чотири сусідні байти відображають (28)4=4294967296 комбінацій із 0 та 1, яким зiставляються числа від 0 до 4294967295, або числа від -2147483648 до 2147483647 чи інші множини з 4294967296 елементів.
Два байти утворюють одиницю пам'яті, яка називається словом. Іноді таке слово називається напівсловом, а словом - послідовність із чотирьох байтів.
Послідовність із 1024 байтів утворює одиницю виміру розмірів пам'яті комп'ютера. Цю одиницю позначають Kбайт, проте це "K" - латинська літера, що читається "кей" і позначає не тисячу, а 1024.
Послідовність із 1K Kбайтів, тобто 1048576 байтів, називається Mбайтом. Ці дві одиниці у світі програмістів і користувачів часто не зовсім точно називають відповідно "кілобайт" і "мегабайт", хоча це зовсім не тисяча і не мільйон байтів. До речі, 1Гбайт, хоча й читається "гігабайт", позначає не мільярд, а 1073741824 байти.
2.2. Подання цілих чисел, символів та бульових значень
Бульовi значення false та true подаються, як правило, в одному байтi комбінаціями відповідно 00000000 та 00000001.
Символи від chr(0) до chr(255) зображаються в одному байтi комбінаціями з нулів та одиниць відповідно від 00000000 до 11111111. Наприклад, символ chr(32), або ' ' (пропуск), зображається як 00100000, символ chr(48), або '0', - як 00110000 тощо.
Цілі числа подаються в комп'ютері, головним чином, у двох формах - беззнаковій та знаковій. Далі ми будемо ототожнювати числа з їх поданням, усвідомлюючи, що з точки зору математики це не може бути правильним.
7 … 0 … 7 … 0 7 … 0
8N-1 … 15 … 8 7 … 0
Беззнаковi числа займають певну кількість N байтiв, яка задає дiапазон (множину) цих чисел від 0 до 28N-1. Найчастiше N=1, 2 або 4, і діапазони чисел - від 0 до відповідно 255, 65535 та 4294967295. Байти записуються від молодших до старших справа наліво та нумеруються від 0 до N-1. Біти всередині байтiв так само записуються від молодших до старших справа наліво й нумеруються від 0 до 7 (рис. 11.1). Усього в N байтах є 8N бітів, які нумеруються справа наліво від 0 до 8N-1. Біти з номерами 8N-1, , 8N-8 утворюють старший байт (він ліворуч), а з номерами 7, , 0 - молодший (праворуч). Комбінація бітів x8N-1, , x0 зображає в двійковій системі число
x8N-1 28N-1+ x1 2+x0.
Наприклад, комбінація 00 00 задає число 0, комбінація 00 01 - "один", 00 10 - "два", 11 11 - число 28N-1.
Таблиця 11.1
число код
28N-1 - 1 01 11
28N-1 - 2 01 10
1 00 01
0 00 00
-1 11 11
-2 11 10
-28N-1 + 1 10 01
-28N-1 10 00
Знаковi числа займають ті самі N , тобто 1, 2 або 4 байти. Найстарший біт зображає знак числа: 0 - знак '+', 1 - знак '-'. Додатні числа подаються так само, як i беззнакові, лише за рахунок знакового біта дiапазон їх менший - від 0 до 28N-1-1. За N=1, 2 або 4 це відповідно 127, 32767 та 2147483647. Таке подання називається прямим кодом. Наприклад, прямим кодом максимального цілого є 011 1.
Від'ємні числа подаються в коді, названому додатковим. Для від'ємного числа A він позначається D (A) й утворюється так:
1) за прямим кодом числа |A| заміною всіх 0 на 1 та всіх 1 на 0 будується обернений код R(A);
2) за R(A) як беззнаковим цілим числом обчислюється D(A)=R(A)+1.
Очевидно, що D(A)=R(|A|-1). Наприклад, побудуємо двобайтовий додатковий код числа -144. Прямим двобайтовим кодом числа 144 буде
0000'0000'1001'0000
(апострофи записано для наочності), оберненим -
1111'1111'0110'1111.
До нього додається 1:
1111'1111'0110'1111
1
1111'1111'0111'0000,
і ми одержуємо додатковий код числа -144. Він є також оберненим кодом числа -143.
За додатковим кодом від'ємне число "відновлюється" у зворотному порядку:
1) D(A)
Loading...

 
 

Цікаве