08_lk_ei
.pdf11
2 ТЕОРЕТИЧНІ ОСНОВИ ЕКОНОМІЧНОЇ ІНФОРМАТИКИ
2.1 Системи числення
Система числення – символічний метод запису чисел, представлення чисел за допомогою письмових знаків.
Для початку проведемо границю між числом і цифрою:
1)Число – це деяка абстрактна сутність для опису кількості.
2)Цифри – це знаки, використовувані для запису чисел.
Цифри бувають різні: найпоширенішими є арабські цифри, що представляються відомими нам знаками від нуля (0) до дев'яти (9); менш поширені римські цифри.
Оскільки чисел набагато більше чим цифр, то для запису числа зазвичай використовується набір (комбінація) цифр. Тільки для невеликої кількості чисел – для найменших по величині – буває досить однієї цифри.
Існує багато способів запису чисел за допомогою цифр. Кожний такий спосіб називається системою числення. Величина числа може залежати від порядку цифр у записі, а може і не залежати. Ця властивість визначається системою числення і служить підставою для найпростішої класифікації таких систем.
Отже, зазначена підстава дозволяє всі системи числення розділити на три класи (групи):
-позиційні;
-непозиційні;
-змішані.
2.1.1 Позиційні системи числення
Найбільш широко розповсюдженими системами числення є позиційні.
Упозиційних системах числення той самий числовий знак (цифра) у запису числа має різні значення залежно від того місця (розряду), де він розташований. Винахід позиційної нумерації, заснованої на помісному значенні цифр, приписується шумерам і вавілонянам; така нумерація була розвинена індусами і мала неоціненні наслідки в історії людської цивілізації. До таких систем належить сучасна десяткова система числення, виникнення якої зв'язано з рахунком на пальцях. У середньовічній Європі вона з'явилася через італійських купців, у свою чергу, що запозичили її в мусульман.
Узагальному випадку в позиційній системі числення числа
представляються в такий спосіб: (anan − 1...a0)f, де a0, a1, ..., an – цифри, а f – основа системи числення. Якщо використовується десяткова система, то f – можна вилучити.
12
Приклади чисел:
– 110012 – число у двійковій системі числення, a0 = 1,a1 = 0,a2 = 0,a3 = 1,a4 = 1;
–2213 – число в трійковій системі числення, a0 = 1,a1 = 2,a2 = 2;
–318 – число у восьмеричній системі числення, a0 = 1,a1 = 3;
–2510 – число в десятковій системі числення, a0 = 5,a1 = 2;
2.1.2 Перетворення чисел з однієї системи числення в іншу
Правило 1. Щоб перевести число з будь-якої системи числення з основою b, у десяткову систему числення необхідно використовувати формулу – символічний запис суми членів степеневого багаточлену:
N = Pk bk + Pk−1bk −1 +K + P2b2 + P2b1 + Pb0 0 − P−1b−1 + P−2b−2 +K + P−mb−m
k
N = ∑Pbi
i
i=m
Наприклад, відоме число у двійковій системі (1101,11)2, потрібно перевести в десяткову систему.
У цьому випадку: b = 2; m = 2; K = 3; P3 = 1; P2 = 1; P1 = 0; P0 = 1; P-1 = 1; P-2 = 1.
N =1 23 + 1 22 +0 21 + 1 20 + 1 2-1 + 1 2-2 =8+4+1+0,5+0,25 = 13,75.
Правило 2. Щоб перевести цілу частину числа, представлену в десятковій системі числення, у число іншої системи числення, необхідно:
1)Поділити цілу частину числа на основу нової системи числення;
2)Залишок від ділення буде останньою позиційною цифрою числа в новій системі числення;
3)Якщо частка від ділення більше основи нової системи числення, то його потрібно ділити на основу цієї системи. Залишок від ділення буде передостанньою позиційною цифрою числа в новій системі;
4)Таке ділення повторювати, поки частка від ділення не стане менше основи нової системи числення, причому ця частка від ділення зробити першою позиційною цифрою нового числа.
Приклад перетворення десяткового числа 19 у двійкову систему числення представлено на рис.2.1.
Таким чином, 19 = 100112 Аналогічним образом відбувається перетворення в 16-ричну і 8-ричну
систему.
Для перетворення числа із шістнадцятеричної системи числення у восьмеричну або навпаки, тобто з восьмеричної системи числення в
13
шістнадцятеричнк використовується проміжне перетворення у двійкову
систему числення. |
|
|
||||||
19 |
|
2 |
|
|
|
|
|
|
18 |
|
9 |
2 |
|
|
|
|
|
|
1 |
|
8 |
4 |
|
2 |
|
Остання частка від ділення |
|
|
|
||||||
|
|
|
1 |
4 |
2 |
2 |
||
|
|
|
|
|||||
|
|
|
|
0 |
2 |
1 |
|
|
0
Результуюче число
1 0 0 1 1
Рисунок 2.1 – Перетворення десяткового числа 19 у двійкову систему числення
Таблиця 2.1 – Числа в чотирьох системах числення
Десяткове |
Двійкове |
Восьмеричне |
Шістнадцятеричне |
число |
число |
число |
число |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
2 |
10 |
2 |
2 |
3 |
11 |
3 |
3 |
4 |
100 |
4 |
4 |
5 |
101 |
5 |
5 |
6 |
110 |
6 |
6 |
7 |
111 |
7 |
7 |
8 |
1000 |
10 |
8 |
9 |
1001 |
11 |
9 |
10 |
1010 |
12 |
A |
11 |
1011 |
13 |
B |
12 |
1100 |
14 |
C |
13 |
1101 |
15 |
D |
14 |
1110 |
16 |
E |
15 |
1111 |
17 |
F |
2.2 Представлення і обробка числової, символьної і графічної інформації.
2.2.1 Представлення числової інформації
14
Комп'ютер може обробляти дані, які представлені в спеціальному вигляді – тільки за допомогою нулів і одиниць. Кожний 0 або 1 називають бітом. Один біт – це мінімальна одиниця інформації, що описує тільки 2 можливих стану. Вісім бітів поєднуються в байт: 00101011, 00000000, 11111111, 10101010. Байт – основна одиниця представлення інформації в комп'ютері. У підсумку вся інформація в комп'ютері представляється як набір величезного (сотні тисяч і мільйони) числа нулів і одиниць, розбитих на окремі байти. Таке представлення інформації називають цифровим або двійковим. Обробка двійкових даних виконується за допомогою спеціальних правил, обумовлених так званою двійковою арифметикою.
Залежно від розв'язуваної задачі байт може містити закодоване представлення різних типів даних.
Найпростішим і історично першим є кодування цілих чисел. Цілі числа представляються у двійковому виді в такий спосіб: 000000002 = 010, 000000012 = 110, …, 111111112 = 25510.
Діапазон цілих чисел, кодованих одним байтом, визначається числом можливих комбінацій з восьми нулів і одиниць. Це число рівне 28, тобто 256. Якщо треба закодувати число більше 255, то два байти поєднуються разом і використовується 16 бітов. Це дає 216, тобто 65536 комбінацій. Ще більші цілі числа можна представити за допомогою 4 байтів або 32 бітов. Для представлення чисел зі знаком один біт приділяється під знак.
Більш складне представлення існує для дійсних (не цілих) чисел, і обробка таких чисел значно складніша для комп'ютера.
В ЕОМ використовуються три види чисел: з фіксованою точкою (комою), із плаваючою точкою (комою) і двоїчно-десяткове представлення. Точка (кома) – це уявлена границя цілої і дробової частин числа.
Одиниці виміру інформації. 1 байт = 8 біт 1 Кбайт = 1024 байт
1 Мбайт = 1024 Кбайт
1 Гбайт = 1024 Мбайт
1 Тбайт = 1024 Гбайт
2.2.2 Представлення текстової інформації
Основна операція над окремими символами тексту – порівняння символів.
При порівнянні символів найбільш важливими аспектами є унікальність коду для кожного символу і довжина цього коду, а сам вибір принципу кодування практично не має значення.
15
Для кодування текстів використовуються різні таблиці перекодування. Важливо, щоб при кодуванні і декодуванні того самого тексту використовувалася та сама таблиця.
Таблиця перекодування – таблиця, що містить упорядкований деяким чином перелік кодуємих символів, відповідно до якої відбувається перетворення символу в його двійковий код і назад.
Найбільш популярні таблиці перекодування: ДКОІ-8 (двійковий код для обміну інформацією, 8 біт), ASCII, CP1251, Unicode.
Історично склалося, що в якості довжини коду для кодування символів було обрано 8 біт або 1 байт. Тому найчастіше одному символу тексту, збереженому в комп'ютері, відповідає один байт пам'яті.
Різних комбінацій з 0 і 1 при довжині коду 8 біт може бути 28 = 256, тому за допомогою однієї таблиці перекодування можна закодувати не більш 256 символів. При довжині коду в 2 байта (16 біт) можна закодувати 65536 символів.
2.2.3 Представлення графічної інформації
Важливим етапом кодування графічного зображення є розбивка його на дискретні елементи (дискретизація).
Основними способами представлення графіки для її зберігання і обробки за допомогою комп'ютера є растрові і векторні зображення.
Векторне зображення являє собою графічний об'єкт, що полягає з елементарних геометричних фігур (найчастіше відрізків і дуг). Положення цих елементарних відрізків визначається координатами точок і величиною радіуса. Для кожної лінії вказується двійкові коди типу лінії (суцільна, пунктирна, штрихпунктирна), товщини і кольору.
Растрове зображення являє собою сукупність точок (пікселів), отриманих у результаті дискретизації зображення відповідно до матричного принципу.
Матричний принцип кодування графічних зображень полягає в тому, що зображення розбивається на задану кількість рядків і стовпців. Потім кожний елемент отриманої сітки кодується за обраним правилом.
Pixel (picture element – елемент рисунка) – мінімальна одиниця зображення, колір і яскравість якої можна задати незалежно від іншого зображення.
Відповідно до матричного принципу будуються зображення, виведені на принтер, відображувані на екрані дисплея, одержувані за допомогою сканеру.
Якість зображення буде тем вище, чим "щільніше" розташовані пікселі, тобто чим більше роздільна здатність пристрою, і чому точніше закодований колір кожного з них.
16
Для чорно-білого зображення код кольору кожного пікселя задається одним бітом.
Якщо рисунок кольоровий, то для кожного пікселу задається двійковий код його кольору.
Оскільки і кольори кодуються у двійковому коді, то якщо, наприклад, ви прагнете використовувати 16-колірний рисунок, то для кодування кожного пікселя вам буде потрібно 4 біта (16=24), а якщо є можливість використовувати 16 біт (2 байта) для кодування кольору одного пікселя, то ви можете передати тоді 216 = 65536 різних кольорів. Використання трьох байтів (24 бітов) для кодування кольору однієї точки дозволяє відобразити 16 777 216 (або близько 17 мільйонів) різних відтінків кольору – так званий режим "дійсного кольору" (True Color). Помітимо, що це використовувані в цей час, але далеко не граничні можливості сучасних комп'ютерів.
2.2.4 Представлення звукової інформації
З курсу фізики вам відомо, що звук – це коливання повітря. По своїй природі звук є безперервним сигналом. Якщо перетворити звук в електричний сигнал (наприклад, за допомогою мікрофона), ми побачимо плавно мінливу із часом напругу.
Для комп'ютерної обробки аналоговий сигнал потрібно якимось чином перетворити в послідовність двійкових чисел, а для цього його необхідно дискретизувати і відцифрувати.
Можна зробити в такий спосіб: вимірювати амплітуду сигналу через рівні проміжки часу і записувати отримані числові значення в пам’ять комп'ютера.
2.3 Алгоритмізація обчислювальних процесів
Алгоритмізація – це процес побудови алгоритму рішення задачі, результатом якого є виділення етапів процесу обробки даних, формальний запис вмісту цих етапів і визначення порядку їх виконання.
Алгоритм – точний набір інструкцій, що описують порядок дій виконавця для досягнення результату рішення задачі за певний час.
Основними властивостями алгоритмів є:
1)Універсальність (масовість) – застосовність алгоритму до різних наборів вихідних даних.
2)Дискретність – процес рішення задачі по алгоритму розбитий на окремі дії.
3)Однозначність – правила і порядок виконання дій алгоритму мають єдине тлумачення.
17
4)Кінцевість – кожне з дій і весь алгоритм у цілому обов'язково завершуються.
5)Результативність – по завершенню виконання алгоритму обов'язково отримується кінцевий результат.
6)Виконанність – результат алгоритму досягається за певне число
кроків.
Алгоритм вважається правильним, якщо його виконання дає правильний результат. Відповідно алгоритм містить помилки, якщо можна вказати такі припустимі вихідні дані або умови, при яких виконання алгоритму або не завершиться взагалі, або не буде отримано ніяких результатів, або отримані результати виявляються неправильними.
Виділяють три великі класи алгоритмів:
–обчислювальні алгоритми, що працюють із порівняно простими видами даних, такими як числа і матриці, хоча сам процес обчислення може бути довгим і складним;
–інформаційні алгоритми, що представляють собою набір порівняно простих процедур, що працюють із великими обсягами інформації (алгоритми баз даних);
–керуючі алгоритми, що генерують різні керуючі впливи на основі даних, отриманих від зовнішніх процесів, якими алгоритми управляють.
Способи запису алгоритмів.
Для запису алгоритмів використовують найрізноманітніші засоби. Вибір засобу визначається типом алгоритму, що виконується. Виділяють наступні основні способи запису алгоритмів:
–вербальний, коли алгоритм описується людською мовою;
–символьний, коли алгоритм описується за допомогою набору символів;
–графічний, коли алгоритм описується за допомогою набору графічних зображень.
Загальноприйнятими способами запису є графічний запис за допомогою блок-схем і символьний запис за допомогою якої-небудь алгоритмічної мови.
Алгоритмічна мова – набір символів і правил утворення і тлумачення конструкцій цих символів для запису алгоритмів.
Мова програмування – призначена для реалізації програм на ЕОМ. Програма – це алгоритм, записаний у формі, що сприймається
машиною. Програма містить поряд з описом даних команди, у якій послідовності, над якими даними і які операції повинна виконувати машина,
атакож у якій формі слід одержати результат. Це забезпечують різні
оператори.
Дані – це факти і ідеї, представлені у формалізованому вигляді, що дозволяє передавати або обробляти ці факти і ідеї за допомогою деякого процесу.
18
Оператор – сукупність символів, що вказують операцію і значення, або місцезнаходження її елементів.
Змінна – це об'єкт, який у ході виконання програми може міняти своє значення.
2.4 Блок-схеми
Блок-схема – розповсюджений тип схем, що описують алгоритми або процеси, у яких окремі кроки зображуються у вигляді блоків різної форми, з'єднаних між собою лініями.
Блок-схема алгоритму дає наочне представлення ходу обчислень. При складанні більших проектів або програм використовують зображення укрупнених блоків, що містять розв'язок якоїсь частини завдання (це називається підзадача або підпрограма). Потім кожний модуль деталізують окремо.
Блок-схема або формульно-словесний опис – основа подальшого складання програми. По суті програмування – це запис блок-схеми або формульно-словесного алгоритму за допомогою конкретної мови програмування, з використанням його правил і засобів.
Сучасний підхід до рішення задач, заснований на використанні комп'ютерних обчислювальний систем, вимагає мінімальних зусиль для програмування, але висуває підвищені вимоги до проектування алгоритмів на рівні укрупнених блок-схем, які становлять основу сучасних обчислювальних проектів.
Правила виконання схем визначаються наступними документами:
–ДСТУ 19.701-90. Схеми алгоритмів, програм, даних і систем. Умовні позначки і правила виконання.
–ДСТУ 19.002-80. Схеми алгоритмів і програм. Правила виконання.
–ДСТУ 19.003-80. Схеми алгоритмів і програм. Позначення умовні графічні.
Для графічного зображення алгоритму використовують наступні позначення (таблиця 2.2)
Опис інших елементів схем можна знайти у відповідних ДСТУ (зазначені вище).
|
|
|
|
|
19 |
Таблиця 2.2 – Основні елементи схем алгоритму |
|||||
|
|
|
|
|
|
Найменування |
|
Позначення |
Функція |
||
|
|
|
|
|
|
Блок початок-кінець |
|
|
|
|
Елемент відображає вхід із |
(пуск-зупинка) |
|
|
|
|
зовнішнього середовища або вихід |
|
|
|
|
|
з неї ( найбільш часте застосування |
|
|
|
|
|
− початок і кінець програми). |
|
|
|
|
|
Усередині фігури записується |
|
|
|
|
|
відповідна дія. |
Блок обчислень |
|
|
|
|
Виконання однієї або декількох |
(обчислювальний |
|
|
|
|
операцій, обробка даних будь- |
блок) |
|
|
|
|
якого виду (зміна значення даних, |
|
|
|
|
|
форми вистави, розташування). |
|
|
|
|
|
|
|
|
|
|
|
Усередині фігури записують |
|
|
|
|
|
безпосередньо самі операції, |
|
|
|
|
|
наприклад, операцію |
|
|
|
|
|
присвоювання: a = 10*b + c. |
Логічний блок |
|
|
|
|
Відображає розв'язок або функцію |
(блок умови) |
|
|
|
|
перемикального типу з одним |
|
|
|
|
|
входом і двома або більш |
|
|
|
|
|
альтернативними виходами, з яких |
|
|
|
|
|
тільки один може бути обраний |
|
|
|
|
|
після обчислення умов, певних |
|
|
|
|
|
усередині цього елемента. Вхід в |
|
|
|
|
|
елемент позначається лінією, що |
|
|
|
|
|
входить звичайно у верхню |
|
|
|
|
|
вершину елемента. Якщо виходів |
|
|
|
|
|
два або три то звичайно кожний |
|
|
|
|
|
вихід позначається лінією, що |
|
|
|
|
|
виходить із вершин, що |
|
|
|
|
|
залишилися (бічних і нижньої). |
|
|
|
|
|
Якщо виходів більше трьох, то їх |
|
|
|
|
|
слід показувати однієї лінією, що |
|
|
|
|
|
виходить із вершини (частіше |
|
|
|
|
|
нижньої) елемента, яка потім |
|
|
|
|
|
розгалужується. Відповідні |
|
|
|
|
|
результати обчислень можуть |
|
|
|
|
|
записуватися поруч із лініями, що |
|
|
|
|
|
відображають ці шляхи. |
20
|
|
|
|
|
|
|
|
|
Продовження табл. 2.2 |
|
|
|
|
|
|
|
|
|
|
Найменування |
|
Позначення |
Функція |
||||||
|
|
|
|
|
|
|
|
|
|
Визначений процес |
|
|
|
|
|
|
|
|
Символ відображає виконання |
|
|
|
|
|
|
|
|
|
процесу, що складається з однієї |
|
|
|
|
|
|
|
|
|
або декількох операцій, який |
|
|
|
|
|
|
|
|
|
визначений в іншому місці |
|
|
|
|
|
|
|
|
|
програми (у підпрограмі, модулі). |
|
|
|
|
|
|
|
|
|
Усередині символу записується |
|
|
|
|
|
|
|
|
|
назва процесу і передані в нього |
|
|
|
|
|
|
|
|
|
дані. Наприклад, у програмуванні − |
|
|
|
|
|
|
|
|
|
виклик процедури або функції. |
Дані |
|
|
|
|
|
|
|
|
Перетворення даних у форму, |
(введення- |
|
|
|
|
|
|
|
|
придатну для обробки (введення) |
виведення) |
|
|
|
|
|
|
|
|
або відображення результатів |
|
|
|
|
|
|
|
|
|
обробки (виведення). Даний |
|
|
|
|
|
|
|
|
|
символ не визначає носія даних |
|
|
|
|
|
|
|
|
|
(для вказівки типу носія даних |
|
|
|
|
|
|
|
|
|
використовуються специфічні |
|
|
|
|
|
|
|
|
|
символи). |
Границя циклу |
|
|
|
|
|
|
|
|
Символ складається із двох частин |
|
|
|
|
|
|
|
|
|
− відповідно, початок і кінець |
|
|
|
|
|
|
|
|
|
циклу − операції, виконувані |
|
|
|
|
|
|
|
|
|
усередині циклу, розміщаються |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
між ними. Умови циклу і |
|
|
|
|
|
|
|
|
|
збільшення записуються усередині |
|
|
|
|
|
|
|
|
|
символу початку або кінця циклу − |
|
|
|
|
|
|
|
|
|
залежно від типу організації циклу. |
|
|
|
|
|
|
|
|
|
Часто для зображення на блок- |
|
|
|
|
|
|
|
|
|
схемі циклу замість даного |
|
|
|
|
|
|
|
|
|
символу використовують символ |
|
|
|
|
|
|
|
|
|
розв'язку, указуючи в ньому умова, |
|
|
|
|
|
|
|
|
|
а одну з ліній виходу замикають |
|
|
|
|
|
|
|
|
|
вище в блок-схемі (перед |
|
|
|
|
|
|
|
|
|
операціями циклу). |
