Загальні методичні вказівки

Ф 03 – 48

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

Криворізький коледж Національного авіаційного університету

 

ЗАТВЕРДЖУЮ

Заступник начальника коледжу

з навчально-методичної роботи

_____________ Г.В. Даниліна

«___» ________ 20__ р.

 

МЕТОДИЧНІ ВКАЗІВКИ

ДО ВИКОНАННЯ САМОСТІЙНОЇ РОБОТИ

з навчальної дисципліни

з навчальної дисципліни «Системне програмування»

(назва дисципліни)

 

галузі знань __ 12 «Інформаційні технології» __

(шифр та найменування галузі знань)

 

напряму підготовки/ спеціальності123 «Комп’ютерна інженерія» ____________

код та назва напряму підготовки/спеціальності)

 

 

Кривий Ріг

Методичні вказівки до виконання самостійної роботи для курсантів денної (заочної) форми навчання за спеціальністю /напрямом підготовки

_________ ___________________123 «Комп’ютерна інженерія»_______________________

(назва спеціальності/напряму підготовки)

з дисципліни «__________________ Системне програмування_______________________»

(назва дисципліни)

 

 

Криворізького коледжу НАУ. – Кривий Ріг, 2017. – 8 с.

 

 

Укладач: викладач, спеціаліст, Новік Тетяна Миколаївна

(посада, наук. ступінь, вчене звання, прізвище, ім’я, по батькові)

 

 

Методичні вказівки до виконання самостійної роботи з навчальної дисципліни «Системне програмування» обговорено на засіданні циклової комісії ___ програмного забезпечення ЕОМ _______ (назва циклової комісії) Протокол № ______ Від «____»____________20__ р. Голова циклової комісії __________ Кравчатий А.В. (підпис) (П.І.Б) ПОГОДЖЕНО Завідувач навчально-методичного кабінету ________ ____________________ (підпис) (П.І.Б.) «____» __________20__ р.  

Пояснювальна записка

Методичні вказівки до виконання самостійної роботи з дисципліни «Системне програмування» студентам денної форми навчання відводиться 54 години.

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

Самостійна робота студентів охоплює всі теми курсу, які входять до навчальної програми. Більшість тем з дисципліни «Системне програмування» розглядаються на лекціях, але є теми, які цілком вивчаються студентами самостійно і, звісно, потребують більшої уваги з боку студентів.

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

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

 

Загальні методичні вказівки

На сучасному етапі важливою частиною процесу підготовки фахівців є самостійна робота студентів, на яку в технічних вищих навчальних закладах відводиться 40 – 60% від загального обсягу годин за навчальним планом. При цьому слід враховувати, що певні теми і питання не викладаються на лекціях, а виносяться на самостійне опрацювання. Основними видами самостійної роботи при вивченні хімії є опрацювання теоретичного матеріалу, підготовка до лабораторних і практичних занять, різних форм контролю – поточного, модульного, підсумкового та виконання індивідуальних завдань. Організація самостійної роботи спрямована на глибоке засвоєння та розуміння основних хімічних понять і законів, властивостей речовин, що неможливо досягти без опанування алгоритмів розв’язування типових задач і виконання завдань, яке в свою чергу потребує відповідного методичного забезпечення. Мета даних методичних вказівок – допомога студентам в процесі самостійної роботи над предметом, оволодіти основами курсу і навчитися розв’язувати типові завдання та задачі. Методичні вказівки призначені для самостійної роботи студентів денної та заочної форм навчання, які вивчають дисципліну "Системне програмування", яка містить такі розділи:

– Асемблюовання і виконання програми;

– Організація програми і визначення даних;

– Арифметичні і логічні команди;

– Команди обробки рядків;

– Підпрограми.

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

3. Орієнтований тематичний план з тем, які винесені на самостійну роботу

№ розділу, теми Назва теми Кількість годин на самостійну роботу

 

     
Розділ №1. Асемблюовання і виконання програми
1.1 Введення в сімейство мікропроцесорів Intel x86. Архітектура 16-ти і 32-х розрядних МП.  
1.3 Логічна структура МП. Принцип роботи пристрою виконання і шинного інтерфейсу. Черга команд.  
1.4 Процеси асемблювання. Призначення компілятор, компонувальник, завантажувача і налагоджувача.  
1.5 Машинна адресація. Сегменти пам'яті.  
1.6 Функціональна організація ЕОМ. Компановка, виконання, програми трасування  
1.7 Директиви сегментації.  
Розділ №2. Організація програми і визначення даних
2.2 Формат надання базових даних у ПК.  
2.4 Вивчення способів визначення даних на мові Assembler. Подання даних у пам'яті ЕОМ.  
2.5 Стандартні моделі пам'яті.  
2.6 Інструментальні засоби розробки програм на мові Assembler.  
2.7 Створення простої. com програми.  
2.8 Способи адресації в командах мови Assembler. Реєстрова, безпосередня, пряма, непряма адресації, масштабування при адресації.  
Розділ №3 Арифметичні і логічні команди
3.4 Використання команд пересилання даних, арифметичних і логічних команд у програмі.  
3.5 Програмування лінійних обчислювальних процесів.  
3.6 Компілятор MASM. Використання директиви. IF.  
3.7 Програмування завдань з розгалуженням.  
3.8 Компілятор MASM. Використання директиви. REPEAT в. WHILE.  
3.9 Програмування завдань з циклами.  
Розділ №4. Команди обробки рядків
4.2 Типові операції з масивами. Організація двовимірних масивів.  
4.3 Використання команд обробки рядків і таблиць.  
4.4 Складні типи даних: структури.  
4.5 Складні типи даних: об'єднання.  
Розділ №5. Підпрограми
5.3 Поняття про макрозасоби мови Assembler.  
5.4 Макрокоманди і макродирективи.  
5.5 Підпрограми і стек.  
5.6 Директиви умовної компіляції, генерації помилок користувача, директиви керування лістингом програми.  
Всього за навчальною дисципліною  

4. Методичні вказівки до самостійної роботи

Розділ 1 Асемблюовання і виконання програми

Тема 1.1 Введення в сімейство мікропроцесорів Intel x86. Архітектура 16-ти і 32-х розрядних МП.

Питання для самоконтролю:

1. У чому відмінності системного програмування від прикладного?

2. Що характерно для системного програмування?

3. Чим відрізняються мікропроцесори сімейства х88/x86?

4. Що розуміється під архітектурою процесора з точки зору програміста і з точки зору фахівця по "залізу"?

5. Які основні види архітектур процесорів ви знаєте?

6. Які основні особливості архітектур процесорів ви знаєте?

Тема 1.3 – 1.7 Логічна структура МП. Принцип роботи пристрою виконання і шинного інтерфейсу. Черга команд. Процеси асемблювання. Призначення компілятор, компонувальник, завантажувача і налагоджувача. Машинна адресація. Сегменти пам'яті. Функціональна організація ЕОМ. Компановка, виконання, програми трасування. Директиви сегментації.

Питання для самоконтролю:

1. Які основні елементи апаратних засобів ви знаєте?
2. З чого складається системний блок?
3. Які елементи розміщені на системній платі?
4. Для чого використовуються комірки розширення?
5. У чому відмінності процесорів 8088, 8086, 80286, 80386?
6. Опишіть загальну структуру процесора.
7. Які функції ШИ ви знаєте?
8. Які функції ОУ ви знаєте?

Розділ 2 Організація програми і визначення даних

Тема 2.2 – 2.5 Формат надання базових даних у ПК. Вивчення способів визначення даних на мові Assembler. Подання даних у пам'яті ЕОМ. Стандартні моделі пам'яті.

Питання для самоконтролю:

1.В якому вигляді зберігаються символи в комп'ютері?

2. Розшифруйте абревіатуру ASCII.

3. Який числовий проміжок мають керуючі символи?

4. Який числовий проміжок мають видимі символи?

5. Який числовий проміжок виділений для національних символів і символів псевдографіки?

6. Як називається кодування, передбачена для ієрогліфів?

7. Якими видами цілих чисел оперує комп'ютер?

8. Які типи дійсних чисел ви знаєте?

Тема 2.6 - 2.8 Інструментальні засоби розробки програм на мові Assembler. Створення простої. com програми. Способи адресації в командах мови Assembler. Реєстрова, безпосередня, пряма, непряма адресації, масштабування при адресації.

Питання для самоконтролю:

1. Які типи операндів можуть зустрічатися в будь-якій команді?

2. Що мається на увазі під скороченнями r8, reg, imm, r/m8, mem запропонованих фірмою Intel по процесору Pentium?

3. Що ставить у відповідність змінним асемблер при трансляції?

4. Які регістри не можна вказувати в якості одержувача при використанні команди MOV?

5. Можна переслати безпосередньо задане значення в сегментний регістр?

6. Можна переслати дані з пам'яті в пам'ять за допомогою команди MOV?

7. Можна переслати дані з регістра в регістр використовуючи команду MOV? Якщо так, то чи є обмеження на цю пересилку?

8. Яка виникає проблема при копіюванні меншого за довжиною значення в змінну більшої довжини?

9. Як вирішити проблему копіюванні меншого за довжиною значення в змінну більшої довжини з допомогою команди MOV?

10. Які дії виконує команда MOVZX?

11. З даними працює команда MOVZX?

12. З даними працює команда MOVSX?

13. Які дії виконує команда MOVSX?

14. Які дії виконують команди LAHF і SAHF?

15. Для чого використовується команда XCHG?

16. Потрібен додатковий оператор для обміну даних пам'яті? Якщо так то який?

17. Для чого використовуються операнди безпосередньо з заданим зміщенням?

18. Яке повинно бути змішання для доступу до комірок подвійного слова?

19. Яке повинно бути змішання для доступу до комірок слова?

20. Яке повинно бути змішання для доступу до комірок байти?

Розділ 3 Арифметичні і логічні команди.

Тема 3.4 Використання команд пересилання даних, арифметичних і логічних команд у програмі.

Питання для самоконтролю:

1. Які внутрішні типи даних описують речові числа?

2. Які внутрішні типи даних описують цілі числа?

3. Кокою синтаксис оператора для Асемблера?

4. Що таке множественна ініціалізація?

5. Як визначаються рядка в Асемблері?

6. Яку роль відіграють дані 0Dh, 0Ah і 0 в описі рядків?

7. Для чого використовується оператор DUP?

8. Який розмір пам'яті виділяють оператори DWORD, SDWORD QWORD, TBYTE?

9. Яке призначення символічної константи?

10. Яке призначення директив EQU і TEXTEQU? У чому їх відмінність?

Тема 3.5 – 3.9 Програмування лінійних обчислювальних процесів. Компілятор MASM. Використання директиви IF. Програмування завдань з розгалуженням. Компілятор MASM. Використання директиви. REPEAT в. WHILE. Програмування завдань з циклами.

Питання для самоконтролю:

1. Які прапори змінюються при використанні команд зрушень?

2. Чим відрізняється логічний і арифметичний зсув?

3. Які команди виконують логічний і арифметичний зсув?

4. Для чого найчастіше використовують оператор логічного зсуву вправо?

5. Як зробити множення регістра AX на 8, використовуючи оператор логічного зсуву?

6. Для чого найчастіше використовують оператор логічного зсуву вліво?

7. Чи можна за допомогою оператора SHR виробляти ділення чисел сл знаком?

8. Як провести поділ регістра AX на 64, використовуючи оператор логічного зсуву якщо врахувати що в AX беззнакове ціле число?

9. Для чого зазвичай використовується команда SAR?

10. Опишіть дії команди SAR.

11. Для чого можна використовувати команду ROL?

12. Опишіть дію команди RCL.

13. Наведіть приклад використання команди RCL.

14. Опишіть дію команди RCR.

15. Наведіть приклад використання команди RCR.

16. Які дії виконують команди SHLD і SHRD?

17. Наведіть приклад застосування SHLD і SHRD команд.

18. Для рішення яких завдань можуть використовуватися команди SHLD і SHRD?

19. Яка команда виконує множення без знака?

20. Який синтаксис команди множення без знака?

21. Для чого використовується прапор CF в команді множення без знака?

22. Яка команда виконує множення чисел зі знаком?

23. Для чого використовується прапор OF в команді множення чисел зі знаком?

24. Який синтаксис команди множення чисел зі знаком?

25. Яку команду використовують для ділення чисел без знака?

26. Який синтаксис команди ділення чисел без знака?

27. Які команди використовуються для розширення цілого числа зі знаком?

28. Який синтаксис команди мають розширення цілого числа зі знаком?

29. Яка команда використовуються для ділення цілого числа зі знаком?

30. Який синтаксис має команда ділення цілого числа зі знаком?

31. Які помилки можуть виникнути при використанні команд поділу?

32. Реалізуйте вираз var4 = (varl + var2) * var3 у вигляді ассемблерной програми.

Розділ 4 Команди обробки рядків.

Тема 4.2 – 4.3 Типові операції з масивами. Організація двовимірних масивів. Використання команд обробки рядків і таблиць.

Питання для самоконтролю:

1. Які режими передбачені в системі команд Intel для роботи з двовимірними масивами?

2. Як адреса операнда обчислюється при базово-індексному режимі адресації?

3. Який розмір регістрів необхідний для обчислення адреси операнда при базово-індексному режимі адресації?

4. Як адреса операнда обчислюється при базово-індексному режимі адресації зі зміщенням?

Тема 4.4 – 4.5 Складні типи даних: структури. Складні типи даних: об'єднання.

Питання для самоконтролю:

1. Що називають об'єднанням?

2. Для чого використовуються об'єднання?

3. Який синтаксис має опис об'єднання?

4. Які відмінності між об'єднаннями і структурами ви знаєте?

Розділ 5 Підпрограми

Тема 5.3 – 5.4 Поняття про макрозасоби мови Assembler. Макрокоманди і макродирективи.

Питання для самоконтролю:

1. Які макрооператоры ви знаєте?

2. Яку дію виконує макрооператор &?

3. Яку дію виконує макрооператор <>?

4. Яку дію виконує макрооператор!?

5. Яку дію виконує макрооператор %?

6. Яку дію виконує макрооператор;;?

7. Поясніть дію директиви EXITM

8. Поясніть дію директиви LOCAL

9. Поясніть дію директиви PURGE

10. Які директиви управління файлами ви знаєте?

11. Поясніть дію директиви INCLUDE

12. Поясніть дію директиви INCLUDELIB

13. Який синтаксис багаторядкових коментарів в асемблері?

Тема 5.5 – 5.6 Підпрограми і стек. Директиви умовної компіляції, генерації помилок користувача, директиви керування лістингом програми.

Питання для самоконтролю:

1. Які директиви умовного асемблювання ви знаєте?

2. Які спеціальні команди перевірки умов асемблювання ви знаєте?

3. Які директиви умовного асемблювання з обробки помилок ви знаєте?

4. Наведіть приклад директив керування лістингом.

 

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: