Б С Бусигін - Прикладна інформатика - страница 8

Страницы:
1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83 

5 Спеціалісти розглядають дев'ять значень поняття рівень, який є головним для концепції ієрархії систем. Термін «рівень» може означати: 1) ступінь взагалі (рос.-степень вообще); 2) ступінь складності; 3) ступінь глибини аналітичного дослідження; 4) виникнення (рос.-возникновение) (істотної (рос.-естественной), тваринної) організації більш високого рівня у порівнянні з наявною (рос.-имеющейся);  5) систему

ЗАДАЧА

Від формату-вати д іапазон комірок (рос.-ячеек)

В4^16 у грошовому форматі.комп'ютерних систем і інформаційних потоків и означають ініціалізацію того чи іншого процесу, який діється на стадіях проектування, реалізації або роботи

багаточисельних елементів ПК.

3.2. Фізичний і логічний рівні застосування команд

Слід відмітити, що найбільш важливими у інформаційних технологіях є фізичний і логічний рівні уявлення компонентів комп'ютера, який перетворився за останні 20 років у технологічно и технічно надзвичайно складний комплекс різноманітних взаємодіючих поміж собою пристроїв: клавіатури, миші, різноманітних чипів і чипсетов, мікропроцесорів, дисководів для зйомних та незйомних носіїв інформації, дисплея, принтера, сканера і т.д. (рис. 3.4).

Рис. 3.4. Персональний комп'ютер у комплексі

Фізичний рівень визначає конкретну технологічну реалізацію того або іншого пристрою або елемента. Наприклад, дисплей ПК може бути конструктивно реалізован на електронно-лучової трубці (рис. 3.4) або на основі жидкокрісталічної або плазмової технологій.

Зовнішній запам'ятовуючий пристрій комп'ютера може уявляти собою флоппі-дисковод або жорсткий диск і кожний зі своєю системою команд доступу, кількості секторів, доріжок, циліндрів і т.д. Уявіть собі ситуацію, коли Вам для того, щоб переписати файл з одного пристрою на інший буде потрібно вникати до всіх технічних тонкостей різниць (рос. -отличий) принципово різних дискових пристроїв і до того ж самому писати програми обміну поміж ними.

взаємопов'язаних властивостей, або змінних; 6) розряд; 7) шар (рос.-слой); 8) головний шар (рос.-слой); 9) рівень.

Для спрощення розуміння і безпеки використання пристроїв ПК, при роботі користувача з ОС вводиться поняття логічного рівня. Це дозволяє абстрагуватися від усіх технічних і програмних тонкостей роботи з цими пристроями і оперувати, наприклад, іменами логічних дискових пристроїв у ОС MS DOS (A:, C:, D: и т.д.), або графічними уявленнями цих же дискових пристроїв на робочому столі ОС Windows. Таким чином, можна сказати, що логічний рівень - це концептуальнийб, тобто віртуальний7 рівень, котрий уключає в себе концептуальні, а не реальні фізичні об'єкти і ховає (рос.-скрывает) принципи їх реалізації.

Це означає, що коли Ви звертаєтесь до логічного імені флоппі-диска або жорсткого диску для Вас не мають значення ані їх конструктивні особливості, ані тонкості технічної реалізації (може тільки об'єм вільного дискового простору (рос.-пространства)!) (рис. 3.5).

Рис. 3.5. Рівні логічного уявлення магнітних дисків у ПК, які забезпечують роботу з даними, що на них розташовані

Таким чином, логічним іменем диска може служити абстрактне позначення пристрою комп'ютера у вигляді додаткового текстового і/або графічного імені/позначення, які приписуються операційною системою для зручності їх використання.  Логічне  ім'я  дає  можливість  користуватися  об'єктом не

6 Концепція - визначений (рос.-определённый) спосіб розуміння, трактовка якого нибудь предмета, явища, процесу.

7 Віртуальний - який не має фізичного втілення (рос-воплощения) або який сприймається (рос-воспринимаемый) інакше, ніж реалізован.поглиблюючись у особливості його фізичної реалізації. Наприклад, кожний логічний диск ПК є частиною фізичного жорсткого диску, котра розглядається як окремий жорсткий диск зі своїм іменем накопичувача (рис. 3.6).

Рис. 3.6. Розміщення логічних дисків на фізичному 3.3. Команди фізичного і логічного рівнів

Oxide Isolation

Багато які компоненти і пристрої ПК містять в своєму складі різноманітні інтегральні схеми, сама велика з котрих у ПК звичайно є процесором. З часів

винаходження першого в світі мікропроцесора (МП) Intel 4004 у 1971 році, у котрому містилося 2 3OO напівпровідникових транзисторів пройшло вже достатньо багато часу. Але й і зараз технічно процесор реалізується у вигляді великої інтегральної схеми (ВІС), структура котрої постійно ускладнюється, а кількість функціональних елементів (типу діод або транзистор) на ній постійно росте (від 5 мільйонів у процесорі Pentium II до 42 млн. транзисторів у Pentium 4). І це не межа (рос.-предел). У кінці 2002 року співробітники компанії Intel розробили абсолютно новий тип кремнієвих транзисторів, швидкість переключення яких приблизно у 1000 разів перевершує (рос.-превосходит) аналогічний показник транзисторів, які використовуються у сучасних чипах. Новий транзистор має ширину усього у S0 атомів (20 нм), що дозволить умістити в майбутньому на одному кристалі більш ніж мільярд таких елементів (рис. 3.7).

Не дивлячись на такий неймовірний ріст концентрації електронних елементів у процесорі, робота усіх цих транзисторів у електричних схемах і самі електричні схеми практично не змінилися з часів їх винаходу.

Рис. 3.7. Транзистор, який є елементом інтегральної

і електричної схем, що представляють мікропроцесор.

Командами відкриття і закриття транзисторів на рівні електричних схем і ланцюгів є електричні сигнали8, які звуться електричними імпульсами9 (рис. 3.8). Таким чином, необхідно чітко уявлять, що на самому нижньому рівні абстракції, тобто на фізичному рівні конструкції елементів ПК, поняття команда відноситься до засобів управління електронними компонентами пристроїв, таких як процесор10, чипсет11 або материнської плати, схеми пам'яті та інших, які побудовані на тріодах, діодах, опорах (рос.-сопротивлениях), провідниках і т.д. (рис. 3.8 и 3.9).

+ и

АЛЛ-

■ЛДЛ—*

Рис. 3.8. Електрична схема перетворення Пилкоподібного (рос. -пилообразного) сигналу у прямокутні імпульси

А) Б) В) Г)

Рис. 3.9. Позначення діода (А), транзистора (Б) і опорів (В) и (Г) на електричних схемах.

Імпульси забезпечують не тільки злагоджену (рос.-слаженное) взаємодію, включення і виключення самих пристроїв і блоків, побудованих на цих пристроях, але й моделюють особисто основу функціонування ПК - цифрові значення 0 и 1, які використовуються для кодування усіх даних і інформації .

8 Сигнал - мінливий у часі фізичний процес, що відображає повідомлення, яке передається.

9 Електричний імпульс - короткочасне відхилення напруги або струму від деякого постійного значення.

10 Процесор (мікропроцесор) - це мікросхема, яка реалізує функції центрального процесора персонального комп'ютера.

11 Чипсет - набір мікросхем материнської плати, які реалізують архітектуру комп'ютера.

Проектування комп'ютерних і мікропроцесорних пристроїв починається на логічному рівні шляхом розробки логічних схем роботи нового пристрою по завданим вимогам. Складні логічні системи будуються з типових логічних вузлів, які уявляють собою схеми з логічних вентилів. До типових логічних вузлів, що відіграють основоположну роль у мікропроцесорних і комп'ютерних системах, відносяться: тригери (рис. 3.10), регістри, лічильники, дешифратори, селектори, схеми виконання арифметичних операцій (суматори і віднімателі), а також системи шин.

Транзистори і інші елементи мікропроцесорів групуються у логічні схеми, елементами яких є так звані вентилі, сполучення сигналів на входах и виходах яких реалізує модель поведінки або протікання того або іншого реального процесу. Рисунки з зображеннями елементарних логічних схем і їх зв'язків називаються логічними діаграмами (рис 3.10), у котрих при розробці логіки роботи комп'ютера і його пристроїв повідомлення моделюються у вигляді сигналів (команд), які подаються на їх входи.

Рис. 3.10. Логічна схема    -тригера і таблиця сигналів і станів (рос. -состояний) на його входах

Одними з найголовніших елементів МП є тригери - найпростіші цифрові схеми послідовного типу. У залежності від алгоритму роботи, який реалізується, тригер може мати установочні, інформаційні або управляючі входи. Він також має два стійких стани: (3=1 и ((=0 (див. рис.3.10) и тому його іноді називають бістабільною схемою. У якому з цих станів опиніться тригер, залежить від сигналів на входах тригера і від його попереднього стану, тобто він має пам'ять. Таким чином, командами логічного рівня для цього і інших подібних пристроїв є значення (сигнали) 0 и 1 на входах Я и Б (рис. 3.10).

Слід пам'ятати, що логічний (вентильний) рівень уявлення тригера, на фізичному рівні може реалізовуватися транзисторами і резисторами за допомогою різних технологій і з різних, взагалі говорячи, матеріалів.

З моменту винаходу у 1959 року інтегральних схем МП або як їх щё звуть «чипів», лавино образно росте інтерес до створення на їх базі електронних пристроїв, які знатні виконувати складні функції управління. Після упровадження (рос.-внедрения) мікропроцесорів у виробництво кишенькових калькуляторів вони почали широко застосовуватися і в інших галузях.

Головними якостями цих пристроїв стали низька вартість і спроможність виконувати програми. Іншими словами, мікропроцесор є логічним пристроєм, яке програмується і виготовляється у монолітному кристалі. Сам по собі МП не може вирішити ту або іншу конкретну задачу. Для її вирішення його потрібно запрограмувати, забезпечити необхідними даними і з'єднати з іншими пристроями. Наприклад, МП може управляти світлофорами на складному перехресті, забезпечуючи їх переключення через задані проміжки (рос.-промежутки) часу (рис. 3.11).

Рис. 3.11. Світлофор на складної ділянці дорожньої розв'язки у Англії, який управляється за допомогою мікропроцесора і схема типового його

підключення

3.4. Команди програмних рівнів і рівнів роботи з ОС

Наступним, більш високим рівнем уявлення команд, є приписання (рос.-предписания), які визначають елементарні шаги виконання програмованих дій у роботі конкретних пристроїв, наприклад, запис, зчитування, пересилання даних і так далі у регістрах і інших блоках процесора. Для їх обробки у інтегральних схемах служать програмний лічильник (рос.-счетчик) (лічильник команд), стек і регістр команд. Зрозуміло, що ці команди також управляють і роботою усіх інших пристроїв та компонентів пристроїв ПК.

Команда мікропроцесора як правило складається з коду операції (КОП) і так званої адресної частини, де можуть указуватися адреси операндів у оперативної пам'яті (ОП, ОЗУ). Операндами звуться данні, над якими команда робить які нибудь дії. Як правило, у адресній частині команд вказуються несамі операнди, а їх адреси в операційних пристроях ПК (регістрах, суматорах, оперативній пам'яті і ін.).

Формати команд достатньо сильно залежать від конструкції процесора.

12

Для процесора, який розроблено по архітектурі Фон-Неймана, котрій відповідають всі великі чипи фірми Intel, команди будуються наступним чином (рис. 3.12).

Рис. 3.12. Побудова команд процесорів Intel

Внутрішні команди процесора є основою архітектури обчислювальної системи і, відповідно, комп'ютерної платформи13. На їх базі будуються практично усі мови високого рівня (МВР), такі як С, Pascal, C++, Object Pascal, Java і багато інших. В мікропроцесорі команди мають цифрову кодировку(рис. 3.13), а дані обробляються у двоїчної, восьмирічній, шістнадцятирічній і десятинній системах обчислення (див. також Додаток 2).

75CBFF75CAFB75CDFF75CCFB7 5 9 8 5 275

C834D28875D24A75D32075D50175330E

75345975A60175A11375D13230DFFD20

8929E5DB9533C2D71200F8E5DA9534C2

D71200F8E5DD1200F8E5DC1200F89001

181200D8B2B41200CF80CEC289E5DB 94

Рис. 3.13. Фрагмент програми комп'ютера у цифровому вигляді

(шістнадцятирічний код).

12 Архітектура - опис обчислювальної системи на деякому загальному рівне, який включає опис користувальницьких можливостей програмування, системи команд і засоби користувальницького інтерфейсу, організації пам'яті і системи адресації, операцій уводу-виводу і управління и т.д.

13 Платформа - сукупність апаратних засобів, програмного забезпечення і інтерфейсів, які використовуються у конкретних комп'ютерах. Як правило, платформа визначається операційною системою, яка застосується, а також і процесором.

Таким чином, кожної команді відповідає деякий цифровий код (наприклад, 01, 02 і т.д.), котрий спеціальним пристроєм дешифратором інтерпретується у відповідну послідовність елементарних дій (посилань (рос. -посылок), імпульсів) виконуючим пристроям (тригерам, суматорам, регістрам і ін.).

Якщо для коду операції використовується восьми бітне слово (байт), то за допомогою цього слова можна закодувати 256 операцій. У процесі розробки системи команд нового пристрою для операції може бути назначено аби який код. Саме системою команд і визначається конкретне сімейство процесорів. Однобайтні команди дозволяють робити з внутрішніми програмно доступними регістрами процесора. При цьому для виконання однієї і той же операції над різними регістрами процесора назначаються різні коди команд.

С ціллю зручності (рос.-удобства) написання програм для конкретних пристроїв комп'ютера розробляються спеціальні мови (програмування) нижнього рівня (МНУ) - асемблери. Точно так же звуть і програму або пакет програм, які здійснюють трансляцію (перетворення) початкового (рос.-исходного) тексту програми (початковий (рос.-исходный) модуль) у машинні коди (об'єктний модуль). Далі, як правило, код, що отримано трансформується у загрузочний модуль, тобто програму у вигляді пригодному для завантаження (рос.-загрузки) і виконання. Такий файл містить програму у машинному коді, інформацію для настройки адресів у пам'яті ПК і має розширення імені .ЕХЕ.

У асемблерних програмах, цифровим кодам команд, доводяться у відповідність (рос.-соответствие) мнемонічні (текстові) позначення (наприклад, ADD - скласти, LOOP-цикл, MOV-переслати і т.д.) з відповідними адресними частинами. Таким чином, для повного позначення (рос.-обозначения) команди використовуються мнемонічне позначення операції і символічні імена операндів, що вона використовує, котрі перелічуються (рос.-перечисляются) через кому. При цьому, у більшості процесорів операнд приймач (рос.-приёмник) даних записується першим, а операнд джерело (рос. -источник) даних - другим.

Наприклад:

MOV     ІRO, A ; Скопіювати вміст (рос. -содержимое) регістра A у регістр R0

Інструкція (команда) складання вмісту двох регістрів для 16-розрядного процесора Intel 80286 на мові асемблера виглядає наступним чином:

ADD    |AX,BX   і ; Скласти вміст регістрів AX и BX

Команда організації циклу має вигляд:

LOOP   |MET1 і ; MET1 - ім'я мітки начала циклу

бб

Команда зсуву (рос.-сдвига) вліво на 4 біта вмісту (рос.-содержимого) регістру АХ показана нижче.

SHL |AX,4

; AX ім'я регістру

Важність мови асемблеру полягає ще і в тому, що, наприклад, в дійсності команда пересилки даних MOV - це ціле сімейство машинних команд мікропроцесора. Для різних типів адресів і операндів, існує від семи (Intel SGSG) і більше різних варіантів даної команди. Асемблер породжує правильний машинний запис, основуючись на типах операндів, котрі вказують програміст. И це одна з причин, по котрій асемблер потребує для операндів зазначення типів, тобто асемблер повинен знати, що уявляє (рос.-представляет) собою кожний операнд - регістр, байт пам'яті, слово пам'яті, сегментний регістр, або щось інше.

Основою формування програм для виконання на комп'ютерах задач з різних предметних областей є мови (програмування) високого рівня (МВР). У їх структуру обов'язково входять команди обробки даних, які іменуються також операторами програми або пропонуваннями (рос.-предложениями) мови програмування. Сюди можна віднести оператори (команди): циклу, умовні, вибору і деякі інші. Кожний з таких операторів реалізується у комп'ютері у вигляді набору базових машинних команд процесора. Переклад кожного оператора і всієї програми у цілому у набори відповідних машинних команд здійснюється компілятором або інтерпретатором мови програмування, яка використовується.

Компілятором зветься програмний засіб для перетворення тексту програми з опису на вхідній мові (мові програмування) у її уявлення на вихідної мові (у машинних командах). Програмна система, яка аналізує команди або оператори програми і негайно (рос.-немедленно) виконує їх зветься інтерпретатором. Достатньо часто переклад програми при трансляції здійснюється спочатку на мову асемблера, а потім вже у машинні команди.

Наприклад, розглянемо простий математичний вираз:

f(n) = n!     (обчислити значення факторіала числа n)

Операторна реалізація його в вигляді фрагмента програми на мові Турбо Паскаль буде виглядати наступним чином:

Команди (інструкції) мови ТП

1;

1 to Fct * n i;

do

Фрагмент програми на мові Турбо Паскаль, який реалізує обчислення факторіала числа п и занесення цього значення у змінну Беї (ячейку з ім'ям Беї:)

Так як роботу і взаємодію користувача з пристроями комп'ютера організує операційна система, вона повинна враховувати, що на кожній комп'ютерній платформі існує свій, стандартний набір команд машинного рівнядля управління обчислювальною системою (комп'ютером) у цілому. У даному контексті командою є припис (рос.-предписание) комп'ютеру або пристрою виконати визначений (рос. -определённый) крок на путі рішення задачі. Нижче приведено фрагмент наведеної вище програми обчислення факторіала на мові асемблера для процесора платформи Intel (рис. 3.14)..

Код операції

Адресна частина

Коментарі

START:

mov

i, 1

mov

Fct, 1

mov

CX, n

sub

CX, i

Страницы:
1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83 


Похожие статьи

Б С Бусигін - Прикладна інформатика