Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
снови інформатики: лабораторні роботи
Лабораторна робота №11
Представлення символьної інформації в компютері
Мета: Ознайомитись з представленням інформації в компютері.
Вимоги до захисту роботи: Виконати завдання лабораторної роботи. Подати звіт у електронному вигляді (формат Word) з протоколом виконання роботи. Знати відповіді на контрольні питання.
Програмне забезпечення: текстовий процесор, Калькулятор.
Теоретичні відомості:
Представлення символьної інформації
Для представлення текстової (символьної) інформації в компютері стандартно використовується алфавіт потужністю 256 символів. Один символ з такого алфавіту несе 8 біт інформації (28 = 256). Але 8 біт = 1 байту, відповідно, двійковий код кожного символу в компютерному тексті займає 1 байт памяті.
Приклад 1. Скільки біт памяті компютера займе слово «Мікропроцесор»?
Розвязок. Слово складається з 13 літер. Кожна літера є символом компютерного алфавіту і тому займає 1 байт памяті. Слово займає 13 байт = 104 біти памяті, так як 1 байт = 8 біт.
Таблиця кодування: таблиця, в якій встановлюється відповідність між символами та їх порядковими номерами в компютерному алфавіті.
Всі символи компютерного алфавіту пронумеровані від 0 до 255. Кожному номеру відповідає 8-розрядний двійковий код від 00000000 до 11111111. Цей код є порядковим номером символу в двійковій системі числення.
Для різних типів ЕОМ використовуються різні таблиці кодування. З поширенням персональних компютерів IBM PC міжнародним стандартом стала таблиця кодування під назвою ASCII (American Standard Code for Information Interchange) Американський стандартний код для інформаційного обміну.
Таблицю кодів ASCII почали використовувати з 1964 року в IBM-сумісних компютерах. [2]
Стандартними в цій таблиці є лише перші 128 символів, тобто символи з номерами від нуля (двійковий код 00000000) до 127 (01111111). Сюди входять літери латинського алфавіту, цифри, знаки пунктуації, дужки та деякі інші символи.
При цьому стандарт ASCII перші 32 коди (від 0 до 31) не визначає. Це керуючі коди, які не використовуються для подання інформації. Їх встановлюють виробники компютерних систем за своїми погодженнями та стандартами.
Починається таблиця ASCII з коду символу пропуску 32. Далі йдуть коди спеціальних символів та розділових знаків (3347), десяткових цифр (4857), деяких математичних символів та розділових знаків (58-64), великих латинських літер (65-90), малих латинських літер (97122), спеціальних символів (123127, 9196).
Друга частина таблиці ASCII це коди від 128 (двійковий код 10000000) до 255 (11111111), зарезервовані для національних стандартів (наприклад, кодування великих і малих букв українського чи російського алфавіту і т. д.), символів псевдографіки та наукових символів (наприклад, символи ≥, ≤ або ±). Ця частина кодів буває різною для різних ПК, залежно від країни-виробника.
Отже, стандарт ASCII це коди від 0 до 127. Це однобайтові коди.
Зазначимо, що тепер є пять різних систем кодування кирилиці (КОИ8-Р, Windows, MS-DOS, Macintosh та ISO). Найбільш розповсюджена кодова таблиця Microsoft Windows, яка має позначення CP1251 («CP» означає «Code Page» кодова сторінка). Наявність різних систем кодування кирилиці створює певні труднощі у процесі роботи в Інтернеті з україномовними та російськомовними текстами.
Таблиця кодів ASCII
32 |
пропуск |
52 |
4 |
72 |
H |
92 |
\ |
112 |
p |
33 |
! |
53 |
5 |
73 |
I |
93 |
] |
113 |
q |
34 |
« |
54 |
6 |
74 |
J |
94 |
^ |
114 |
r |
35 |
# |
55 |
7 |
75 |
K |
95 |
_ |
115 |
s |
36 |
$ |
56 |
8 |
76 |
L |
96 |
` |
116 |
t |
37 |
% |
57 |
9 |
77 |
M |
97 |
a |
117 |
u |
38 |
& |
58 |
: |
78 |
N |
98 |
b |
118 |
v |
39 |
“ |
59 |
; |
79 |
O |
99 |
c |
119 |
w |
40 |
( |
60 |
< |
80 |
P |
100 |
d |
120 |
x |
41 |
) |
61 |
= |
81 |
Q |
101 |
e |
121 |
y |
42 |
* |
62 |
> |
82 |
R |
102 |
f |
122 |
z |
43 |
+ |
63 |
? |
83 |
S |
103 |
g |
123 |
{ |
44 |
, |
64 |
@ |
84 |
T |
104 |
h |
124 |
| |
45 |
- |
65 |
A |
85 |
U |
105 |
i |
125 |
} |
46 |
. |
66 |
B |
86 |
V |
106 |
j |
126 |
~ |
47 |
/ |
67 |
C |
87 |
W |
107 |
k |
127 |
|
48 |
0 |
68 |
D |
88 |
X |
108 |
l |
||
49 |
1 |
69 |
E |
89 |
Y |
109 |
m |
||
50 |
2 |
70 |
F |
90 |
Z |
110 |
n |
||
51 |
3 |
71 |
G |
91 |
[ |
111 |
o |
У наш час все більшого поширення набуває двобайтова система кодування Unicode. В системі Unicode коди символів можуть приймати значення від 0 до 65535 (216 = 65535), що дає можливість практично закодувати всю символіку, яка застосовується в інформаційних процесах. [2]
Юнікод має декілька реалізацій, але найпоширенішими є дві: UTF (Unicode Transformation Format) Формат Перетворення Юнікоду та UCS (Universal Character Set) Універсальна Таблиця Символів. [4]
UTF-8 (від англ. Unicode Transformation Format - Формат перетворення Юнікоду) - в даний час поширена кодування, що реалізовує представлення Юнікоду, сумісне з 8-бітовим кодуванням тексту. Знайшла широке застосування в операційних системах і веб-просторі. [3]
Текст, що складається тільки з символів Юнікоду з номерами менше 128, при записі в UTF-8 перетворюється на звичайний текст ASCII. І навпаки, в тексті UTF-8 будь який байт із значенням менше 128 зображає символ ASCII з тим же кодом. Решта символів Юнікоду зображуються послідовностями завдовжки від 2 до 6 байт, в яких перший байт завжди має вид 11xxxxxx, а решта - 10xxxxxx. [3]
Принцип послідовного кодування алфавіту: у кодовій таблиці ASCII латинські літери (великі та малі) розташовуються в алфавітному порядку. Розташування цифр також впорядковане по зростанню значень. Завдяки чому і в машинному представленні для символьної інформації зберігається поняття «алфавітний порядок». Це правило дотримується і в інших таблицях кодування, зокрема в таблиці символів кирилиці впорядковані російські літери (українські літери, які відрізняються від російських не впорядковані).
Приклад 2. Літера «i» в таблиці кодування символів має десятковий код 105. Що зашифровано послідовністю десяткових кодів: 108 105 110 107?
Розвязок. Про розшифруванні даної послідовності кодів не потрібно звертатися до таблиці кодування символів. Необхідно врахувати принцип послідовного кодування алфавітів і згадати порядок літер в латинському алфавіті ... i, j, k, l, m, n, o ... . Літера «j» буде мати код 106, «k» код 107 і т.д. Відповідно, закодовано слово «link».
Текстова інформація, яка зберігається в памяті компютера в двійковому коді, через свою неоднозначність незручна для сприйняття людиною. На практиці внутрішнє представлення найчастіше перекодовують у шістнадцяткову форму. Шістнадцятковий код кожного символу двозначне число від 00 до FF.
Приклад 3. Послідовність двійкових кодів:
01110011 01110100 01101111 01110000
відповідає слову «stop». Побудувати внутрішнє шістнадцяткове представлення цього слова.
Розвязок. Необхідно врахувати, що кожна шістнадцяткова цифра представляється чотиризначним двійковим числом, тобто двійковому коду 01110011 буде відповідати дві шістнадцяткові цифри 7 (0111) та 3 (0011). Відповідно, шістнадцятковий код буде мати вигляд: 73 74 6F 70.
Завдання:
I. Розвязати наступні задачі, вважаючи що текст закодований в ASCII кодах:
1. Текст займає 0,25 Кбайт памяті компютера. Скільки символів має цей текст?
2. Текст займає повних 5 сторінок. На кожній сторінці розташовані 30 рядків по 70 в кожному рядку. Який обєм оперативної памяті (в байтах) займе цей текст?
3. Десятковий код (номер) літери «е» в таблиці кодування символів дорівнює 101. Яка послідовність десяткових кодів буде відповідати слову 1) file; 2) help?
4. Десятковий код (номер) літери «о» в таблиці кодування символів дорівнює 111. Що зашифровано за допомогою послідовності десяткових кодів:
1) 115 112 111 114 116; 2) 109 111 117 115 101?
5. Використовуючи таблицю кодування символів, розшифруйте текст, який представлений у вигляді шістнадцяткових кодів символів:
1) 57 69 6E 64 6F 77 73 2D 39 35;
2) 63 6F 6D 65 2D 4F 4E 2D 6C 69 6E 65.
6. Використовуючи таблицю кодування символів, отримати шістнадцятковий код слова «ІНФОРМАТИКА». (Для виконання завдання дивись таблицю символів CP1251)
Контрольні запитання:
PAGE 1
Шимон О.М. (ЖДУ, кафедра прикладної математики та інформатики)