Реферат Курсовая Конспект
Методические указания к практическим занятиям по дисциплине Архитектура ЭВМ и вычислительных систем - раздел Философия, Министерство Образования И Науки Российской Федерации Федеральное Аг...
|
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
ФГОУ СПО «Оскольский политехнический колледж»
Методические указания к практическим занятиям
по дисциплине
”Архитектура ЭВМ и вычислительных систем”
Для специальности 230103 – Автоматизированные системы
обработки информации и управления
Старый Оскол 2009 Содержание
Введение. 1
Практическая работа №1 Тема: Перевод чисел из одной системы счисления в другую, выполнение арифметических операций. 1
Практическая работа № 2 (часть 1) Тема: Работа и особенности логических элементов ЭВМ. Триггеры. 11
Практическая работа № 2 (часть 2). Работа логических узлов ЭВМ. Счетчик. 14
Практическая работа № 3. Тема: Построение последовательности машинных команд. 16
Практическая работа №4 Тема: архитектура системной платы. 18
Практическая работа № 5 Тема: Внутренние интерфейсы системной платы. 19
Практическая работа №6 Тема: Интерфейсы периферийных устройств IDE и SCSI 25
Практическая работа №7 Тема: Параллельные и последовательные порты и их особенности работы. 30
Практическая работа № 8 (часть 1) Тема: Программирование арифметических и логических команд. 36
Практическая работа N8 (часть 2) Тема: Программирование арифметических и логических команд. 38
Практическая работа N9 Тема: Программирование переходов. 41
Практическая работа №10 Тема: Программирование ввода- вывода. 44
Практическая работа №11 Тема: Программирование и отладка программ. 47
Практическая работа №12 Тема: Идентификация и установка процессора. 49
Практическая работа №13 Тема: Выбор вычислительной системы. 52
Литература. 63
Введение
Данные указания к выполнению практических работ предназначены для студентов специальности 230103 , изучающих курс дисциплины «Архитектура ЭВМ и вычислительных систем». Содержание соответствует утвержденной программе указанной дисциплины. Основной целью практических занятий является закрепление теоретических знаний и приобретение практических навыков по изученным разделам программы. Студент должен знать: способы представления информации в ЭВМ; классификацию и типовые узлы вычислительной техники (ВТ); архитектуру электронно-вычислительных машин и вычислительных систем; назначение и принципы действия отдельных архитектурных конфигураций; должен уметь: выбирать рациональную конфигурацию оборудования в соответствии с решаемой задачей; обеспечивать совместимость аппаратных и программных средств.. В данных указаниях используется программное обеспечение: Electronics Workbench, Assembler, CompModel, Paint, а также презентации и видео.
Практическая работа №1 Тема: Перевод чисел из одной системы счисления в другую, выполнение арифметических операций
Цель: Перевод чисел из одной позиционной системы счисления в другую. Выполнение арифметических операций
Теоретическая часть
При переводе чисел из десятичной системы счисления в систему с основанием P > 1 обычно используют следующий алгоритм:
1) если переводится целая часть числа, то она делится на P, после чего запоминается остаток от деления. Полученное частное вновь делится на P, остаток запоминается. Процедура продолжается до тех пор, пока частное не станет равным нулю. Остатки от деления на P выписываются в порядке, обратном их получению;
2) если переводится дробная часть числа, то она умножается на P, после чего целая часть запоминается и отбрасывается. Вновь полученная дробная часть умножается на P и т.д. Процедура продолжается до тех пор, пока дробная часть не станет равной нулю. Целые части выписываются после двоичной запятой в порядке их получения. Результатом может быть либо конечная, либо периодическая двоичная дробь. Поэтому, когда дробь является периодической, приходится обрывать умножение на каком-либо шаге и довольствоваться приближенной записью исходного числа в системе с основанием P.
Пример 1. Перевести данное число из десятичной системы счисления в двоичную (получить пять знаков после запятой в двоичном представлении).
а) 464(10); б) 380,1875(10); в) 115,94(10)
Решение
а) 464 | б) 380 | в) 115 | |||||||||
а) 464(10)=111010000(2); б) 380,1875(10) = 101111100,0011(2); в) 115,94(10) » 1110011,11110(2)
(в данном случае было получено шесть знаков после запятой, после чего результат был округлен.)
Если необходимо перевести число из двоичной системы счисления в систему счисления, основанием которой является степень двойки, достаточно объединить цифры двоичного числа в группы по столько цифр, каков показатель степени, и использовать приведенный ниже алгоритм. Например, если перевод осуществляется в восьмеричную систему, то группы будут содержать три цифры (8 = 23). В целой части числа группировка производится справа налево, в дробной части — слева направо. Если в последней группе недостает цифр, дописываются нули: в целой части — слева, в дробной — справа. Затем каждая группа заменяется соответствующей цифрой новой системы. Соответствия приведены в таблице.
P | Соответствия | |||||||||||||||
A | B | C | D | E | F |
Переведем из двоичной системы в шестнадцатеричную число 1111010101,11(2).
001111010101,1100(2) = 3D5,C(16).
При переводе чисел из системы счисления с основанием P в десятичную систему счисления необходимо пронумеровать разряды целой части справа налево, начиная с нулевого, и дробной части, начиная с разряда сразу после запятой, слева направо (начальный номер –1). Затем вычислить сумму произведений соответствующих значений разрядов на основание системы счисления в степени, равной номеру разряда. Это и есть представление исходного числа в десятичной системе счисления.
Пример 2. Перевести данное число в десятичную систему счисления:
а) 1000001(2).
1000001(2) = 1 × 26 + 0 × 25 + 0 × 24 + 0 × 23 + 0 × 22 + 0 × 21 + 1 × 20 = 64 + 1 = 65(10).
Замечание. Если в каком-либо разряде стоит нуль, то соответствующее слагаемое можно опускать.
б) 1000011111,0101(2).
1000011111,0101(2) = 1 × 29 + 1 × 24 + 1 × 23 + 1 × 22 + 1 × 21 + 1 × 20 + 1 × 2–2 + 1 × 2–4 =
= 512 + 16 + 8 + 4 + 2 + 1 + 0,25 + 0,0625 = 543,3125(10).
в) 1216,04(8).
1216,04(8) = 1 × 83 + 2 × 82 + 1 × 81 + 6 × 80 + 4 × 8–2 = 512 + 128 + 8 + 6 + 0,0625 = 654,0625(10).
г) 29A,5(16).
29A,5(16) = 2 × 162 + 9 × 161 + 10 × 160 + 5 × 16–1 = 512 + 144 + 10 + 0,3125 = 656,3125(10).
Для выполнения арифметических операций в системе счисления с основанием P необходимо иметь соответствующие таблицы сложения и умножения.
+ | ´ | |||||
+ | ||||||||
´ | ||||||||
+ | A | B | C | D | E | F | ||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | B | C | D | E | F | |||||||||||
A | A | B | C | D | E | F | ||||||||||
B | B | C | D | E | F | 1A | ||||||||||
C | C | D | E | F | 1A | 1B | ||||||||||
D | D | E | F | 1A | 1B | 1C | ||||||||||
E | E | F | 1A | 1B | 1C | 1D | ||||||||||
F | F | 1A | 1B | 1C | 1D | 1E |
´ | A | B | C | D | E | F | ||||||||||
A | B | C | D | E | F | |||||||||||
A | C | E | 1A | 1C | 1E | |||||||||||
C | F | 1B | 1E | 2A | 2D | |||||||||||
C | 1C | 2C | 3C | |||||||||||||
A | F | 1E | 2D | 3C | 4B | |||||||||||
C | 1E | 2A | 3C | 4E | 5A | |||||||||||
E | 1C | 2A | 3F | 4D | 5B | |||||||||||
1B | 2D | 3F | 5A | 6C | 7E | |||||||||||
A | A | 1E | 3C | 5A | 6E | 8C | ||||||||||
B | B | 2C | 4D | 6E | 8F | 9A | A5 | |||||||||
C | C | 3C | 6C | 9C | A8 | B4 | ||||||||||
D | D | 1A | 4E | 5B | 8F | 9C | A9 | B6 | C3 | |||||||
E | E | 1C | 2A | 7E | 8C | 9A | A8 | B6 | C4 | D2 | ||||||
F | F | 1E | 2D | 3C | 4B | 5A | A5 | B4 | C3 | D2 | E1 |
Пример 3. Сложить числа:
а) 10000000100(2) + 111000010(2) = 10111000110(2); б) 223,2(8) + 427,54(8) = 652,74(8); в) 3B3,6(16) + 38B,4(16) = 73E,A(16).
, | B | , | ||||||||||||||||||||||||||
+ | + | + | ||||||||||||||||||||||||||
, | B | , | ||||||||||||||||||||||||||
, | E | , | A |
Пример 4. Выполнить вычитание:
а) 1100000011,011(2) – 101010111,1(2) = 110101011,111(2);
б) 1510,2(8) – 1230,54(8) = 257,44(8);
в) 27D,D8(16) – 191,2(16) = EC,B8(16).
, | , | D | , | D | |||||||||||||||||||||||||||||
– | – | – | |||||||||||||||||||||||||||||||
, | , | ||||||||||||||||||||||||||||||||
, | , | E | C | , | B |
Пример 5. Выполнить умножение:
а) 100111(2) ´ 1000111(2) = 101011010001(2);
б) 1170,64(8) ´ 46,3(8) = 57334,134(8);
в) 61,A(16) ´ 40,D(16) = 18B7,52(16).
,6 | 1, | A | ||||||||||||||||||||||||||||
´ | ´ | ´ | ||||||||||||||||||||||||||||
,3 | 0, | D | ||||||||||||||||||||||||||||
F | ||||||||||||||||||||||||||||||
+ | + | + | ||||||||||||||||||||||||||||
B | ,5 | |||||||||||||||||||||||||||||
,1 | ||||||||||||||||||||||||||||||
Задания к практической работе
1. Перевести данное число из десятичной системы счисления в двоичную, восьмеричную и шестнадцатеричную системы счисления.
2. Перевести данное число в десятичную систему счисления.
3. Сложить числа.
4. Выполнить вычитание.
5. Выполнить умножение.
Примечание. В заданиях 3–5 проверять правильность вычислений переводом исходных данных и результатов в десятичную систему счисления. В задании 1д получить пять знаков после запятой в двоичном представлении.
Вариант 1
1. а) 860(10); б) 785(10); в) 149,375(10); г) 953,25(10); д) 228,79(10).
2. а) 1001010(2); б) 1100111(2); в) 110101101,00011(2); г) 111111100,0001(2); д) 775,11(8); е) 294,3(16).
3. а) 1101100000(2) + 10110110(2); б) 101110111(2) + 1000100001(2); в) 1001000111,01(2)+100001101,101(2); г) 271,34(8)+1566,2(8); д) 65,2(16)+3CA,8(16).
4. а) 1011001001(2) – 1000111011(2); б) 1110000110(2) – 101111101(2); в) 101010000,10111(2) – 11001100,01(2); г) 731,6(8) – 622,6(8); д) 22D,1(16) – 123,8(16).
5. а) 1011001(2) ´ 1011011(2); б) 723,1(8) ´ 50,2(8); в) 69,4(16) ´ A,B(16).
Вариант 2
1. а) 250(10); б) 757(10); в) 711,25(10); г) 914,625(10); д) 261,78(10).
2. а) 1111000(2); б) 1111000000(2); в) 111101100,01101(2); г) 100111100,1101(2); д) 1233,5(8); е) 2B3,F4(16).
3. а) 1010101(2)+10000101(2); б) 1111011101(2)+101101000(2); в) 100100111,001(2)+100111010,101(2); г) 607,54(8)+1620,2(8); д) 3BF,A(16)+313,A(16).
4. а) 1001000011(2) – 10110111(2); б) 111011100(2) – 10010100(2); в) 1100110110,0011(2) – 11111110,01(2); г) 1360,14(8) – 1216,4(8); д) 33B,6(16) – 11B,4(16).
5. а) 11001(2) ´ 1011100(2); б) 451,2(8) ´ 5,24(8); в) 2B,A(16) ´ 36,6(16).
Вариант 3
1. а) 759(10); б) 265(10); в) 79,4375(10); г) 360,25(10); д) 240,25(10).
2. а) 1001101(2); б) 10001000(2); в) 100111001,01(2); г) 1111010000,001(2); д) 1461,15(8); е) 9D,A(16).
3. а) 100101011(2)+111010011(2); б) 1001101110(2)+1101100111(2); в) 1010000100,1(2)+11011110,001(2); г) 674,34(8)+1205,2(8); д) 2FE,6(16)+3B,4(16).
4. а) 1100110010(2) – 1001101101(2); б) 1110001100(2) – 10001111(2); в) 11001010,01(2) – 1110001,001(2); г) 641,6(8) – 273,04(8); д) 3CE,B8(16) – 39A,B8(16).
5. а) 1010101(2) ´ 1011001(2); б) 1702,2(8) ´ 64,2(8); в) 7,4(16) ´ 1D,4(16).
Вариант 4
1. а) 216(10); б) 336(10); в) 741,125(10); г) 712,375(10); д) 184,14(10).
2. а) 1100000110(2); б) 1100010(2); в) 1011010,001(2); г) 1010100010,001(2); д) 1537,22(8); е) 2D9,8(16).
3. а) 101111111(2)+1101110011(2); б) 10111110(2)+100011100(2); в) 1101100011,0111(2)+1100011,01(2); г) 666,2(8)+1234,24(8); д) 346,4(16)+3F2,6(16).
4. а) 1010101101(2) – 110011110(2); б) 1010001111(2) – 1001001110(2); в) 1111100100,11011(2) ‑ 101110111,011(2); г) 1437,24(8) – 473,4(8); д) 24A,4(16) – B3,8(16).
5. а) 101011(2) ´ 100111(2); б) 1732,4(8) ´ 34,5(8); в) 36,4(16) ´ A,A(16).
Вариант 5
1. а) 530(10); б) 265(10); в) 597,25(10); г) 300,375(10); д) 75,57(10).
2. а) 101000111(2); б) 110001001(2); в) 1001101010,01(2); г) 1011110100,01(2); д) 1317,75(8); е) 2F4,0C(16).
3. а) 1100011010(2)+11101100(2); б) 10111010(2)+1010110100(2); в) 1000110111,011(2)+1110001111,001(2); г) 1745,5(8)+1473,2(8); д) 24D,5(16)+141,4(16).
4. а) 1100101010(2) – 110110010(2); б) 110110100(2) – 110010100(2); в) 1101111111,1(2) – 1100111110,1011(2); г) 1431,26(8) – 1040,3(8); д) 22C,6(16) – 54,2(16).
5. а) 1001001(2) ´ 11001(2); б) 245,04(8) ´ 112,2(8); в) 4B,2(16) ´ 3C,3(16).
Вариант 6
1. а) 945(10); б) 85(10); в) 444,125(10); г) 989,375(10); д) 237,73(10).
2. а) 110001111(2); б) 111010001(2); в) 100110101,1001(2); г) 1000010,01011(2); д) 176,5(8); е) 3D2,04(16).
3. а) 1000011101(2)+101000010(2); б) 100000001(2)+1000101001(2); в) 101111011,01(2)+1000100,101(2); г) 1532,14(8)+730,16(8); д) BB,4(16)+2F0,6(16).
4. а) 1000101110(2) – 1111111(2); б) 1011101000(2) – 1001000000(2); в) 1000101001,1(2) – 1111101,1(2); г) 1265,2(8) – 610,2(8); д) 409,D(16) – 270,4(16).
5. а) 111010(2) ´ 1100000(2); б) 1005,5(8) ´ 63,3(8); в) 4A,3(16) ´ F,6(16).
Вариант 7
1. а) 287(10); б) 220(10); в) 332,1875(10); г) 652,625(10); д) 315,21(10).
2. а) 10101000(2); б) 1101100(2); в) 10000010000,01001(2); г) 1110010100,001(2); д) 1714,2(8); е) DD,3(16).
3. а) 1100110(2)+1011000110(2); б) 1000110(2)+1001101111(2); в) 101001100,101(2)+1001001100,01(2); г) 275,2(8)+724,2(8); д) 165,6(16)+3E,B(16).
4. а) 1011111111(2) – 100000011(2); б) 1110001110(2) – 100001011(2); в) 110010100,01(2) – 1001110,1011(2); г) 1330,2(8) – 1112,2(8); д) AB,2(16) – 3E,2(16).
5. а) 110000(2) ´ 1101100(2); б) 1560,2(8) ´ 101,2(8); в) 6,3(16) ´ 53,A(16).
Вариант 8
1. а) 485(10); б) 970(10); в) 426,375(10); г) 725,625(10); д) 169,93(10).
2. а) 10101000(2); б) 101111110(2); в) 1010101,101(2); г) 1111001110,01(2); д) 721,2(8); е) 3C9,8(16).
3. а) 1010100111(2)+11000000(2); б) 1110010010(2)+110010111(2); в) 1111111,101(2)+101010101,101(2); г) 1213,44(8)+166,64(8); д) 41,4(16)+3CF,D(16).
4. а) 1010000000(2) – 1000101010(2); б) 1011010101(2) – 110011001(2); в) 1001001010,11011(2) – 1000111000,01(2); г) 1145,2(8) – 1077,5(8); д) 380,1(16) – 2DC,3(16).
5. а) 111011(2) ´ 100000(2); б) 511,2(8) ´ 132,4(8); в) 68,4(16) ´ 37,8(16).
Вариант 9
1. а) 639(10); б) 485(10); в) 581,25(10); г) 673,5(10); д) 296,33(10).
2. а) 1011000011(2); б) 100010111(2); в) 1100101101,1(2); г) 1000000000,01(2); д) 1046,4(8); е) 388,64(16).
3. а) 1000010100(2) + 1101010101(2); б) 1011001010(2)+101011010(2); в) 1110111000,101(2)+1101100011,101(2); г) 1430,2(8)+666,3(8); д) 388,3(16)+209,4(16).
4. а) 1111100010(2) – 101011101(2); б) 1011000100(2) – 1000100000(2); в) 1101111000,1001(2) – 1000000,01(2); г) 1040,2(8) – 533,2(8); д) 3FB,4(16) – 140,6(16).
5. а) 11111(2) ´ 10001(2); б) 1237,3(8) ´ 117,5(8); в) 66,4(16) ´ 65,8(16).
Вариант 10
1. а) 618(10); б) 556(10); в) 129,25(10); г) 928,25(10); д) 155,45(10).
2. а) 1111011011(2); б) 1011101101(2); в) 1001110110,011(2); г) 1011110011,10111(2); д) 675,2(8); е) 94,4(16).
3. а) 11111010(2)+10000001011(2); б) 1011010(2)+1001111001(2); в) 10110110,01(2)+1001001011,01(2); г) 1706,34(8)+650,3(8); д) 180,4(16)+3A6,28(16).
4. а) 111101101(2) – 101111010(2); б) 1000110100(2) – 100100111(2); в) 1111111011,01(2) – 100000100,011(2); г) 1300,44(8) – 1045,34(8); д) 16A,8(16) – 147,6(16).
5. а) 100111(2) ´ 110101(2); б) 1542,2(8) ´ 50,6(8); в) A,8(16) ´ E,2(16).
Вариант 11
1. а) 772(10); б) 71(10); в) 284,375(10); г) 876,5(10); д) 281,86(10).
2. а) 1000001111(2); б) 1010000110(2); в) 101100110,011011(2); г) 100100110,101011(2); д) 1022,2(8); е) 53,9(16).
3. а) 1100111(2)+1010111000(2); б) 1101111010(2)+1000111100(2); в) 1111101110,01(2)+1110001,011(2); г) 153,3(8)+1347,2(8); д) E0,2(16)+1E0,4(16).
4. а) 1010101110(2) – 11101001(2); б) 1000100010(2) – 110101110(2); в) 1010100011,011(2) – 1000001010,0001(2); г) 1517,64(8) – 1500,3(8); д) 367,6(16) – 4A,C(16).
5. а) 1100110(2) ´ 101111(2); б) 1272,3(8) ´ 23,14(8); в) 48,4(16) ´ 5,A(16).
Вариант 12
1. а) 233(10); б) 243(10); в) 830,375(10); г) 212,5(10); д) 58,89(10).
2. а) 1001101111(2); б) 1000001110(2); в) 111110011,011(2); г) 11010101,1001(2); д) 1634,5(8); е) C2,3(16).
3. а) 1101111001(2)+1010010101(2); б) 1111001001(2)+1001100100(2); в) 100110010,011(2)+110001000,011(2); г) 1712,14(8)+710,4(8); д) E6,1(16)+38C,8(16).
4. а) 1000001110(2) – 100100001(2); б) 1101000110(2) – 1001101000(2); в) 1011001111,01(2) – 110100010,01(2); г) 1734,4(8) – 134,2(8); д) 2F2,A(16) – 22D,A(16).
5. а) 1000000(2) ´ 100101(2); б) 103,2(8) ´ 147,04(8); в) 67,4(16) ´ 54,8(16).
Вариант 13
1. а) 218(10); б) 767(10); в) 894,5(10); г) 667,125(10); д) 3,67(10).
2. а) 1111100010(2); б) 1000011110(2); в) 101100001,011101(2); г) 1001111001,1(2); д) 1071,54(8); е) 18B,0C(16).
3. а) 1000011111(2)+1111100(2); б) 1011100011(2)+111110110(2); в) 111111100,1(2)+1011100100,1(2); г) 1777,2(8)+444,1(8); д) 3EF,3(16)+C7,4(16).
4. а) 1101000100(2) – 101010101(2); б) 1110010111(2) – 1011100(2); в) 1100101111,01(2) – 10010001,01(2); г) 640,2(8) – 150,22(8); д) 380,68(16) – 50,4(16).
5. а) 100010(2) ´ 1100110(2); б) 741,4(8) ´ 141,64(8); в) B,7(16) ´ D,C(16).
Вариант 14
1. а) 898(10); б) 751(10); в) 327,375(10); г) 256,625(10); д) 184,4(10).
2. а) 101110100(2); б) 1111101101(2); в) 1110100001,01(2); г) 1011111010,0001(2); д) 744,12(8); е) 1EE,C(16).
3. а) 1001000000(2)+101010110(2); б) 11000010(2)+1001110100(2); в) 1011101110,1(2)+11100101,01(2); г) 2015,1(8)+727,54(8); д) 9D,8(16)+ED,8(16).
4. а) 1010000100(2) – 1000001000(2); б) 1111110011(2) – 1001101001(2); в) 101001100,101(2) – 100100101,1(2); г) 1024,6(8) – 375,14(8); д) 3E9,4(16) – 72,6(16).
5. а) 1001010(2) ´ 1001000(2); б) 747,2(8) ´ 64,14(8); в) 56,1(16) ´ 33,C(16).
Вариант 15
1. а) 557(10); б) 730(10); в) 494,25(10); г) 737,625(10); д) 165,37(10).
2. а) 101001101(2); б) 1110111100(2); в) 10000001000,001(2); г) 1000110110,11011(2); д) 147,56(8); е) 1CA,3(16).
3. а) 1101100001(2)+1001101110(2); б) 1101010101(2)+101011001(2); в) 1101111110,011(2)+1100101101,1011(2); г) 1771,2(8)+300,5(8); д) 2F2,8(16)+E4,B(16).
4. а) 1111000000(2) – 111101000(2); б) 1100110111(2) – 1001110000(2); в) 1000011110,1001(2) – 110000111,01(2); г) 1436,34(8) – 145,2(8); д) 3F5,98(16) – 240,3(16).
5. а) 1011100(2) ´ 101000(2); б) 1300,6(8) ´ 65,2(8); в) 68,A(16) ´ 9,6(16).
Вариант 16
1. а) 737(10); б) 92(10); в) 934,25(10); г) 413,5625(10); д) 100,94(10).
2. а) 1110000010(2); б) 1000100(2); в) 110000100,001(2); г) 1001011111,00011(2); д) 665,42(8); е) 246,18(16).
3. а) 11110100(2)+110100001(2); б) 1101110(2)+101001000(2); в) 1100110011,1(2)+111000011,101(2); г) 1455,04(8)+203,3(8); д) 14E,8(16)+184,3(16).
4. а) 1000010101(2) – 100101000(2); б) 1001011011(2) – 101001110(2); в) 111111011,101(2) – 100000010,01(2); г) 341,2(8) – 275,2(8); д) 249,5(16) – EE,A(16).
5. а) 1001000(2) ´ 1010011(2); б) 412,5(8) ´ 13,1(8); в) 3B,A(16) ´ 10,4(16).
Вариант 17
1. а) 575(10); б) 748(10); в) 933,5(10); г) 1005,375(10); д) 270,44(10).
2. а) 1010000(2); б) 10010000(2); в) 1111010000,01(2); г) 101000011,01(2); д) 1004,1(8); е) 103,8C(16).
3. а) 1011110101(2)+1010100110(2); б) 1001100011(2)+1110010010(2); в) 1111110100,01(2)+110100100,01(2); г) 755,36(8)+1246,5(8); д) 8D,2(16)+63,8(16).
4. а) 1100111110(2) – 1101001(2); б) 1101111011(2) – 1101110101(2); в) 1101001010,011(2) – 1010011110,101(2); г) 1632,1(8) – 706,34(8); д) 283,C(16) – 19C,8(16).
5. а) 111000(2) ´ 1101001(2); б) 133,6(8) ´ 73,4(8); в) 46,8(16) ´ B,A(16).
Вариант 18
1. а) 563(10); б) 130(10); в) 892,5(10); г) 619,25(10); д) 198,05(10).
2. а) 11100001(2); б) 101110111(2); в) 1011110010,0001(2); г) 1100010101,010101(2); д) 533,2(8); е) 32,22(16).
3. а) 1100100011(2)+1101001111(2); б) 111101111(2)+10010100(2); в) 1010010000,0111(2)+111010100,001(2); г) 1724,6(8)+1322,2(8); д) 2C7,68(16)+6F,4(16).
4. а) 111001110(2) – 11011011(2); б) 1011000001(2) – 110100001(2); в) 1011111101,1(2) – 111100000,01(2); г) 1126,06(8) – 203,54(8); д) 32B,D(16) – 187,D8(16).
5. а) 1100101(2) ´ 1001010(2); б) 1544,4(8) ´ 16,64(8); в) 69,8(16) ´ 30,8(16).
Вариант 19
1. а) 453(10); б) 481(10); в) 461,25(10); г) 667,25(10); д) 305,88(10).
2. а) 111001010(2); б) 1101110001(2); в) 1001010100,10001(2); г) 111111110,11001(2); д) 1634,35(8); е) 6B,A(16).
3. а) 101110001(2)+101111001(2); б) 1110001110(2)+1100110111(2); в) 10000011010,01(2)+1010010110,01(2); г) 1710,2(8)+773,24(8); д) 3E7,7(16)+32,2(16).
4. а) 1111000010(2) – 1110000011(2); б) 1110101011(2) – 111000111(2); в) 1111011010,011(2) – 1011100111,01(2); г) 1650,2(8) – 502,2(8); д) 3E0,6(16) – 17E,9(16).
5. а) 1001101(2) ´ 11111(2); б) 1226,1(8) ´ 24,4(8); в) 36,6(16) ´ 38,4(16).
Вариант 20
1. а) 572(10); б) 336(10); в) 68,5(10); г) 339,25(10); д) 160,57(10).
2. а) 1010110011(2); б) 1101110100(2); в) 1010101,101(2); г) 1101000,001(2); д) 414,1(8); е) 366,4(16).
3. а) 10001000(2)+1011010010(2); б) 111110011(2)+111110000(2); в) 1010001010,1011(2)+1101010100,011(2); г) 711,2(8)+214,2(8); д) 7A,58(16)+2D0,9(16).
4. а) 110111010(2) – 1110001(2); б) 1100001000(2) – 11000100(2); в) 1111111010,01(2) – 1000110010,0101(2); г) 1060,52(8) – 761,14(8); д) 1C0,6(16) – 8D,2(16).
5. а) 11101(2) ´ 110101(2); б) 1106,2(8) ´ 145,2(8); в) 65,4(16) ´ 55,9(16).
Вариант 21
1. а) 949(10); б) 763(10); в) 994,125(10); г) 523,25(10); д) 203,82(10).
2. а) 1110001111(2); б) 100011011(2); в) 1001100101,1001(2); г) 1001001,011(2); д) 335,7(8); е) 14C,A(16).
3. а) 1110101010(2)+10111001(2); б) 10111010(2) + 10010100(2); в) 111101110,1011(2) + 1111011110,1(2); г) 1153,2(8)+1147,32(8); д) 40F,4(16)+160,4(16).
4. а) 1000000100(2) – 101010001(2); б) 1010111101(2) – 111000010(2); в) 1101000000,01(2) – 1001011010,011(2); г) 2023,5(8) – 527,4(8); д) 25E,6(16) – 1B1,5(16).
5. а) 1001011(2) ´ 1010110(2); б) 1650,2(8) ´ 120,2(8); в) 19,4(16) ´ 2F,8(16).
Вариант 22
1. а) 563(10); б) 264(10); в) 234,25(10); г) 53,125(10); д) 286,16(10).
2. а) 1100010010(2); б) 10011011(2); в) 1111000001,01(2); г) 10110111,01(2); д) 416,1(8); е) 215,7(16).
3. а) 10111111(2)+1100100001(2); б) 110010100(2)+1011100001(2); в) 10000001001,0101(2)+1010000110,01(2); г) 1512,4(8)+1015,2(8); д) 274,5(16)+DD,4(16).
4. а) 1000001001(2) – 111110100(2); б) 1111000101(2) – 1100110101(2); в) 1100110101,1(2) – 1011100011,01(2); г) 1501,34(8) – 1374,5(8); д) 12D,3(16) – 39,6(16).
5. а) 111101(2) ´ 1010111(2); б) 1252,14(8) ´ 76,04(8); в) 66,68(16) ´ 1E,3(16).
Вариант 23
1. а) 279(10); б) 281(10); в) 841,375(10); г) 800,3125(10); д) 208,92(10).
2. а) 1100111001(2); б) 10011101(2); в) 1111011,001(2); г) 110000101,01(2); д) 1601,56(8); е) 16E,B4(16).
3. а) 1000100001(2) + 1011100110(2); б) 1101110011(2) + 111000101(2); в) 1011011,01(2)+1000101110,1001(2); г) 665,1(8)+1217,2(8); д) 30C,7(16)+2A1,8(16).
4. а) 11110010(2) – 10101001(2); б) 1110100001(2) – 1011001001(2); в) 1101001010,1(2) – 1011101001,11011(2); г) 166,14(8) – 143,2(8); д) 287,A(16) – 62,8(16).
5. а) 1001001(2) ´ 100010(2); б) 324,2(8) ´ 122,12(8); в) F,4(16) ´ 38,6(16).
Вариант 24
1. а) 744(10); б) 554(10); в) 269,375(10); г) 120,25(10); д) 139,09(10).
2. а) 101000001(2); б) 1110111100(2); в) 1001110101,011001(2); г) 1000010001,00011(2); д) 1177,6(8); е) 3FA,E8(16).
3. а) 10000001010(2)+11111111(2); б) 111011000(2)+1110111(2); в) 111010101,101(2)+11101111,001(2); г) 251,42(8)+72,54(8); д) 2CF,A(16)+242,4(16).
4. а) 1001000100(2) – 100111010(2); б) 100001100(2) – 10110011(2); в) 1110111100,011(2) – 1100000011,0111(2); г) 1700,2(8) – 456,44(8); д) 1A1,8(16) – E0,7(16).
5. а) 11110(2) ´ 1100100(2); б) 1034,6(8) ´ 43,1(8); в) 2C,4(16) ´ 6,2(16).
Вариант 25
1. а) 686(10); б) 585(10); в) 530,6875(10); г) 87,375(10); д) 131,82(10).
2. а) 110111001(2); б) 101111011(2); в) 1110111100,1(2); г) 110000011,0111(2); д) 742,34(8); е) 396,A(16).
3. а) 10000010001(2)+1000100010(2); б) 101011100(2)+10101111(2); в) 1001110000,001(2)+10100101,011(2); г) 1216,2(8)+2012,4(8); д) 372,18(16)+251,38(16).
4. а) 100110110(2) – 11101001(2); б) 1010100111(2) – 110000010(2); в) 11001101,1011(2) – 1001101,011(2); г) 1254,2(8) – 1150,54(8); д) 2E1,8(16) – 19A,4(16).
5. а) 1101000(2) ´ 10011(2); б) 1411,44(8) ´ 46,4(8); в) 63,8(16) ´ 8,6(16).
Контрольные вопросы
1. Какие системы счисления называются позиционными, а какие — непозиционными? Приведите примеры.
2. Что называется основанием системы счисления?
3. Почему для вычислительной техники особенно важна система счисления по основанию 2?
4. Почему произошел переход от двоичных к шестнадцатеричным обозначениям в архитектуре ЭВМ?
5. Какие способы перевода целых десятичных чисел в двоичные и обратно вы знаете?
6. Каковы правила выполнения арифметических операций над числами в двоичном представлении?
7. Как переводить целые числа из двоичного представления в восьмеричное и шестнадцатеричное представления и обратно?
8. Какое двоичное представление отрицательных целых числе используется в вычислительной технике?
9. Как представляются в вычислительной технике действительные числа (числа с плавающей запятой)?
10. Дать определение системы счисления. Назвать и охарактеризовать свойства системы счисления.
11. Какие символы используются для записи чисел в двоичной системе счисления, восьмеричной, шестнадцатеричной?
12. Чему равны веса разрядов слева от точки, разделяющей целую и дробную часть, в двоичной системе счисления (восьмеричной, шестнадцатеричной)?
13. Чему равны веса разрядов справа от точки, разделяющей целую и дробную часть, в двоичной системе счисления (восьмеричной, шестнадцатеричной)?
Практическая работа № 2 (часть 1) Тема: Работа и особенности логических элементов ЭВМ. Триггеры
Цель: Изучение назначения и принцип работы устройств триггера. Знакомство с базовыми устройствами триггер из библиотеки EWB.
Используемое ПО: Электронная лаборатория Electronics Workbench.
Теоретическая часть
Любая информация в компьютере представляется в двоичном виде, поэтому рассмотрим запоминание и хранение элементарной порции информации - одного бита. Электронная схема, запоминающая один бит информации, называется триггером.
Триггеры – устройства, имеющие два устойчивых состояния. Под действием управляющих сигналов они переходят из одного состояния в другое и после снятия сигналов хранят это состояние до тех пор, пока не отключено напряжение питания. Таким образом, триггер является ячейкой памяти для одного двоичного разряда, т. е. бита информации. Для понимания процессов, происходящих в триггерах, приведем схему асинхронного однотактного RS – триггера на логических элементах И-НЕ (рис. 1).
Рис. 2
В обычном состоянии на входы схемы подано постоянное напряжение 1. При записи информации на один из входов подается напряжение 1. Посмотрим как работает триггер. Пусть на вход 1 (Set - установить) подан сигнал «0», на вход 2 (Reset - переставить, сбросить) - «1» (рис. 2).
На выходе из элемента 1 (И-НЕ) независимо от другого входа элемента 1 появляется «1». На входы элемента 2 подаются «1», на выходе 2 появится «0».
Рис. 3
Если на вход 1 подается сигнал «1», на вход 2 сигнал «0» (рис. 3), то на выходе 1 сигнал «1», на выходе 2 - «0».
Если на входы подать «0», то на выходах значение не изменится.
Таблица истинности RS-триггера
Вход 1 (S) | Вход 2 (R) | Выход 1 (Q) | Действие триггера |
запоминание 1 | |||
запоминание 0 | |||
запомненный бит | хранение бита | ||
неустойчивое состояние | запрещено |
В библиотеке EWB триггеры представлены тремя типами: RS, JK и D, показанных на рис. 4.
Рис. 5
Для понимания процессов, происходящих в триггерах, приведем схему (6) синхронного однотактного RS – триггера на логических элементах И-НЕ.
Триггер имеет входы установки в 0 (R- вход, сигнал на инверсном выходе Q’=1) и 1 (S- вход, сигнал на прямом выходе Q=1). Установка триггера в 0 или 1 производится только при наличии сигнала синхронизации С=1. Возможные комбинации входных сигналов, имитирующие работу триггера в различных режимах, показаны на лицевой панели генератора слова.
Если в D – триггере D – вход соединить с инверсным выходом Q’, то получится T – триггер с одним тактовым С – входом.
Рис. 7
Контрольные вопросы и задания
Практическая работа № 2 (часть 2). Работа логических узлов ЭВМ. Счетчик
Цель: Изучение назначения и функции устройства счетчик. Знакомство с принципом работы устройства счетчик.
Используемое ПО: Электронная лаборатория Electronics Workbench.
Теоретическая часть
Счетчиком называют устройство, сигналы на выходе которого отображают число импульсов, поступивших на счетный выход. Триггер может служить примером простейшего счетчика. Такой счетчик считает до двух. Счетчик, образованный цепочкой из m триггеров, может подсчитать в двоичном коде 2m импульсов. Каждый из триггеров такой цепочки называют разрядом счетчика. Число m определяет количество разрядов двоичного числа, которое может быть записано в счетчик. Число Kcч=2m называют коэффициентом (модулем) счета.
Информация снимается с прямых и (или) инверсных выходов всех триггеров. В паузах между входными импульсами триггеры сохраняют свои состояния, т. е. счетчик запоминает число входных импульсов.
Нулевое состояние всех триггеров принимается за нулевое состояние счетчика в целом. Остальные состояния складываются по числу поступивших входных импульсов. Когда число входных импульсов Nвх>Kcч происходит переполнение, после чего счетчик возвращается в нулевое состояние и цикл повторяется. Коэффициент счета, таким образом, характеризует число входных импульсов, необходимое для одного цикла и возвращения в исходное состояние.
Счетчики различаются числом и типами триггеров, способами связей между ними, кодом, организацией счета и другими показателями. Цифровые счетчики классифицируются по следующим параметрам:
· Коэффициент счета – двоичные; двоично-десятичные или с другим основанием счета; с произвольным постоянным и переменным (программируемым) коэффициентом счета;
· Направление счета – суммирующие, вычитающие и реверсивные ( );
· Способ организации внутренних связей – с последовательным, параллельным или комбинированным переносом, кольцевые.
Классификационные признаки независимы и могут встречаться в различных сочетаниях: например, суммирующие счетчики бывают как с последовательным, так и с параллельным переносом, могут иметь двоичный, десятичный и иной коэффициент счета.
Рис. 8
На вход счетчика подаются импульсы с выхода синхросигналов генератора слова, которые генерируются при каждом нажатии клавиши STEP . Каждый триггер счетчика осуществляет деление на 2, сигнал переноса передается последовательно от одного разряда к другому. Состояние разрядов счетчиков в двоичном коде индицируются логическим пробником (индикатором), а в десятичном – семисегментным индикатором.
Контрольные вопросы и задания
1. Что такое счетчик, какие функции он может выполнять?
2. Назовите типы счетчиков и их возможные применения.
3. Смоделируйте приведенную выше схему и проанализируйте работу счетчика.
Практическая работа № 3. Тема: Построение последовательности машинных команд
Цель:знакомство циклом работы процессора
Используемое ПО: программа-тренажер CompModel, инструкция к программе
Теоретическая часть
Для решения с помощью ЭВМ некоторой задачи должна быть разработана программа. Программа на языке ЭВМ представляет собой последовательность команд. Код каждой команды определяет выполняемую операцию, тип
адресации и адрес. Выполнение программы, записанной в памяти ЭВМ, осуществляется последовательно по командам в порядке возрастания адресов команд или в порядке, определяемом командами передачи управления.
Для того чтобы получить результат выполнения программы, пользователь должен:
□ ввести программу в память ЭВМ;
□ определить, если это необходимо, содержимое ячеек ОЗУ и РОН, содержащих исходные данные, а также регистров IR и BR;
□ установить в PC стартовый адрес программы;
□ перевести модель в режим Работа.
Каждое из этих действий выполняется посредством интерфейса модели, описанного в главе 8. Ввод программы может осуществляться как в машинных кодах непосредственно в память модели, так и в мнемокодах в окно Текст программы с последующим ассемблированием.
Цельнастоящей лабораторной работы — знакомство с интерфейсом модели ЭВМ, методами ввода и отладки программы, действиями основных классов команд и способов адресации. Для этого необходимо ввести в память ЭВМ и выполнить в режиме Шаг некоторую последовательность команд (определенную вариантом задания) и зафиксировать все изменения на уровне программно-доступных объектов ЭВМ, происходящие при выполнении этих команд.
Команды в память учебной ЭВМ вводятся в виде шестиразрядных десятичных чисел (см. форматы команд на рис. 8.3, коды команд и способов адресации в табл. 8.2—8.4).
В настоящей лабораторной работе будем программировать ЭВМ в машинных кодах.
Пример 1
Дана последовательность мнемокодов, которую необходимо преобразовать в машинные коды, занести в ОЗУ ЭВМ, выполнить в режиме Шаг. и зафиксировать изменение состояний программно-доступных объектов ЭВМ (табл. 1)-
Таблица 1. Команды и коды
Последовательность | Значения | ||||
Команды | RD#20 | WR30 | ADD #5 | WR@30 | JNZ 002 |
Коды | 21 1 020 | 220 030 | 231 005 | 22 2 030 | 12 0002 |
Введем полученные коды последовательно в ячейки ОЗУ, начиная с адреса 000. Выполняя команды в режиме Шаг, будем фиксировать изменения программно-доступных объектов (в данном случае это Асе, PC и ячейки ОЗУ 020 и 030) в табл. 2.
Таблица 2. Содержимое регистров
PC | Асе | М(30) | М(20) | PC | Асе | М(30) | М(20) |
Задание 1
В 1. Ознакомиться с архитектурой ЭВМ (см. часть I).
2. Записать в ОЗУ "программу", состоящую из пяти команд— варианты задания выбрать из табл. 9.3. Команды разместить в последовательных ячейках памяти.
3. При необходимости установить начальное значение в устройство ввода IR.
4. Определить те программно-доступные объекты ЭВМ, которые будут изменяться при выполнении этих команд.
5. Выполнить в режиме Шаг введенную последовательность команд, фиксируя изменения значений объектов, определенных в п. 4, в таблице (см. форму табл. 9.2).
6. Если в программе образуется цикл, необходимо просмотреть не более двух повторений каждой команды, входящей в тело цикла.
Таблица 9.3. Варианты задания 1
№ | IR | Команда 1 | Команда 2 | Команда 3 | Команда 4 | Команда 5 | ||
1. | IN | MUL #2 | WR10 | WR010 | JNS 001 | |||
2. | X | RD #17 | SUB #9 | WR16 | WR016 | JNS 001 | ||
3. | IN | ADD #16 | WR8 | WR08 | JS001 | |||
4. | X | RD #2 | MUL #6 | WR 11 | WR 011 | JNZ 00 | ||
5. | IN | WR8 | DIV #4 | WR 08 | JMP 002 | |||
6. | X | RD #4 | WR 11 | RD 011 | ADD #330 | JS000 | ||
7. | IN | WR9 | RD @9 | SUB#1 | JS001 | |||
8. | X | RD 4 | SUB #8 | WR8 | WR @8 | JNZ 001 | ||
9. | IN | ADD #12 | WR 10 | WR @10 | JS004 | |||
10. | X | RD 4 | ADD #15 | WR 13 | WR @13 | JMP 001 | ||
11. | IN | SUB #308 | WR11 | WR @11 | JMP 001 | |||
12. | X | RD#988 | ADD #19 | WR9 | WR @9 | JNZ 001 | ||
13. | IN | WR11 | ADD 11 | WR @11 | JMP 002 | |||
14. | X | RD #5 | MUL #9 | WR10 | WR @10 | JNZ 001 | ||
Содержание отчета
1. Формулировка варианта задания.
2. Машинные коды команд, соответствующих варианту задания.
3. Результаты выполнения последовательности команд в форме табл. 2.
Контрольные вопросы
1. Из каких основных частей состоит ЭВМ и какие из них представлены в модели?
2. Что такое система команд ЭВМ?
3. Какие классы команд представлены в модели?
4. Какие действия выполняют команды передачи управления?
5. Какие способы адресации использованы в модели ЭВМ? В чем отличие между ними?
6. Какие ограничения накладываются на способ представления данных в модели ЭВМ?
7. Какие режимы работы предусмотрены в модели и в чем отличие между ними?
8. Как записать программу в машинных кодах в память модели ЭВМ?
9. Как просмотреть содержимое регистров процессора и изменить содержимое некоторых регистров?
10. Как просмотреть и, при необходимости, отредактировать содержимое ячейки памяти?
11. Как запустить выполнение программы в режиме приостановки работы после выполнения каждой команды?
12. Какие способы адресации операндов применяются в командах ЭВМ?
13. Какие команды относятся к классу передачи управления?
Практическая работа №4 Тема: архитектура системной платы.
Цель:ознакомление с составом системной платы, принципами ее работы.
Используемое программное обеспечение: WinCheckit, SysInfo,WinMSD, видеокурс по архитектуре ПК
Теоретическая часть
Для упрощения подключения устройств электронные схемы IBM PC состоят из нескольких модулей – электронных плат. На основной плате компьютера – системной, или материнской плате – обычно располагаются:
· основной микропроцессор;
· Chipset – основной набор микросхем, которые определяют логику взаимодействия различных функциональных устройств, архитектуру материнской платы и системой шины, тип памяти (ОЗУ и кэш), тактовые частоты;
· BIOS – базовая система ввода-вывода, сейчас реализована на основе флэш-памяти, в которой записаны низкоуровневые подпрограммы обслуживания устройств;
· оперативная память – служит для временного хранения программ и данных;
· кэш-память – служит для ускорения обмена данными между процессором и ОЗУ;
· контроллер клавиатуры – ввод данных и команд в компьютер;
· дополнительные контроллеры и адаптеры (E-IDE, SVGA, FDD, SCSI, Ethernet);
· разъемы расширения – для подключения контроллеров и адаптеров внешних устройств (различают 8-ми, 16-ти и 32-хразрядные разъемы);
· системная шина – передача управляющих сигналов, данных, адресация памяти.
Схемы, управляющие внешними устройствами компьютера (контроллеры или адаптеры), часто находятся на отдельных платах, вставляющихся в разъемы (слоты) на материнской плате. Через эти разъемы контроллеры устройств подключаются непосредственно к системной шине компьютера. Таким образом, наличие свободных разъемов шины обеспечивает возможность добавления к компьютеру новых устройств. Чтобы заменить одно устройство другим (например, устаревший адаптер монитора на новый), надо просто вынуть соответствующую плату из разъема и вставить вместо нее другую.
Практическая часть
· определение типа основного микропроцессора;
· определение тактовой частоты микропроцессора;
· определение типа BIOS ( базовой системы ввода-вывода);
· определение количества подключенных дисковых устройств (физических и логических);
· определение размера ОЗУ и кэш-памяти;
· определение параметров контроллера клавиатуры;
· определение наличия дополнительных контроллеров и адаптеров (E-IDE, SCSI, SVGA, ETHERNET, MODEM, PCI, и т.д.);
· определение типа системной и локальной шины и их характеристики.
3. С помощь. Панели Рисование создать рисунок поясняющий работу системной платы компьютера рис.9.
. Рис9.
Контрольные вопросы
Практическая работа № 5 Тема: Внутренние интерфейсы системной платы
Цель: ознакомление с внутренним интерфейсом ПК
Используемое ПО: Paint, приложения (.bmp)
Теоретическая часть
Первым стандартным системным интерфейсом для ПК следует считать ISA (Industry Standard Architecture - Архитектура промышленного стандарта). ISA представляет собой шину, используемую в IBM PC-совместимых ПК для обеспечения питания и взаимодействия плат расширения с системной платой, в которую они вставляются.
Первый вариант этой архитектуры для ЦП 8086/8088 с тактовой частотой 4,77 МГц представлял собой 62-контактную шину с 8 линиями данных, 20 линиями адреса, сигналами для прерываний и запросов и подтверждения DMA, а также линиями питания и сигналами синхронизации.
У процессора 80286, применявшегося в IBM PC AT, была 16-разрядная шина данных, поэтому системная шина была расширена дополнительным 36-контактным соединителем, который обеспечивал еще восемь линий данных, еще четыре линии адреса, дополнительные линии прерываний и каналов DMA. На эту шину был выведен тактовый сигнал с частотой 8 МГц. Таким образом, теоретическая максимальная скорость передачи данных на шине ISA составляет 16 Мбайт/с. На самом деле, типичная скорость передачи данных на этой шине составляет от 1 до 2,5 Мбайт/с. Это значение обусловлено конфликтами на шине с другими устройствами, главным образом, с памятью, а также задержками буферизации из-за асинхронного характера шины (быстродействие процессора и шины различается).
Появление 32-битных процессоров Intel-386 и Intel-486 показало, что быстродействие магистрали ISA является сдерживающим фактором на пути повышения производительности компьютеров. В 1989 году группой компаний (Compaq, Hewlett Packard, NEC и др.) было предложено эволюционное развитие архитектуры ISA - шина EISA (Extended ISA). С одной стороны, EISA имела все преимущества высокопроизводительной 32-битной шины, а с другой - была полностью совместима с ISA "сверху вниз" и не требовала перехода на новую элементарную базу. Разработчики магистрали EISA позаботились не только об информационной и электрической, но и о конструктивной совместимости с ISA. Разъем EISA состоит из двух рядов контактов, один из которых (верхний) предназначен для сигналов ISA, а другой (нижний) - для дополнительных сигналов EISA (16 дополнительных разрядов данных, 8 дополнительных разрядов адреса, сигналы управления пакетной передачей данных и сигналы управления арбитражем магистрали). Таким образом, в разъемы EISA можно вставлять также 8- или 16-разрядные платы ISA. Предельная скорость передачи (33 МГц) достигается в пакетном режиме, когда адрес предоставляется только в начале пакета и предполагается, что все последующие данные будут поступать в расположенные по порядку ячейки памяти. На магистрали может находиться несколько задатчиков (ЦП, контроллер DMA, контроллер регенерации динамической памяти и др.). Управление предоставлением магистрали централизованно выполняется специальным арбитром по циклическому принципу. Для арбитража используются особые линии магистрали, индивидуальные для каждого разъема.
Альтернативная системная архитектура MCA (Micro Channel Architecture - Микроканальная архитектура) была предложена IBM в 1987 году в серии ПК PS/2. Основным достоинством MCA по сравнению с ISA было увеличение разрядности шины данных до 32 бит. При мультиплексированном использовании шины адреса (32 бит) допускается расширение шины данных до 64 бит. Как и в EISA, в MCA предусмотрена возможность включения многих задатчиков, но арбитраж при этом является не централизованным, а распределенным,причем приоритеты могут устанавливаться программным путем.
MCA не зависит от типа процессора и является полностью асинхронной.
Для магистрали MCA предусмотрена автоматическая конфигурация системы. При этом пользователь может изменять и назначать приоритеты различных устройств. Для увеличения скорости передачи в режиме DMA используется специальный блочный режим (burst mode).
Однако эта шина не нашла широкого распространения, возможно, потому, что компания IBM (по крайней мере, первоначально) взимала слишком большую лицензионную пошлину за ее применение, а также потому, что существовавшие тогда платы адаптеров ПК невозможно было использовать на этой шине, вследствие чего потребителям приходилось приобретать все новые платы, а производителям -заново их разрабатывать.
В типичной системе на основе Intel-386/486 (рис. 10) использовались раздельные шины для памяти и устройств ввода-вывода, что позволяло максимально задействовать возможности оперативной памяти и обеспечивало максимальную скорость работы с ней. Однако в таком случае устройства, подключенные через описанные системные интерфейсы, не могут достичь скорости обмена, сравнимой с процессором. В основном это требуется для видеоадаптеров и контроллеров накопителей. Для решения проблемы была предложена архитектура на основе локальных шин (рис. 11), которые непосредственно связывали процессор с контроллерами периферийных устройств.
Рис. 10. Типичная система с низкоскоростной шиной устройств ввода-вывода
Рис. 11. Система с архитектурой локальной шины (VLB)
Наиболее распространенными локальными шинами считались VLB и PCI. VLB (VESA3) Local Bus) представляет собой расширение шины процессора без промежуточных буферов, что резко ограничивает ее нагрузочную способность (2-3 устройства). VLB имеет 32-разрядную шину данных и 32-разрядную шину адреса. Арбитр магистрали не предусмотрен. Достоинством VLB является простота и низкая стоимость. Позднее была также разработана спецификация VLB2, ориентированная на системы на основе Intel Pentium, (64-разрядная шина данных, тактовая частота до 50 МГц, поддержка Plug&Play), однако широкого применения эта разработка не нашла, т.к. была вытеснена шиной PCI.
PCI Express
Интерфейс PCI Express использует концепцию PCI, однако физическая их реализация кардинально отличается. На физическом уровне PCI Express представляет собой не шину, а некое подобие сетевого взаимодействия на основе последовательного протокола. Высокое быстродействие PCI Express позволяет отказаться от других системных интерфейсов (AGP, PCI), что дает возможность также отказаться от деления системного чипсета на северный и южный мосты в пользу единого контроллера PCI Express.
PCI Express обеспечивает передачу управляющих сообщений, в том числе прерываний, по тем же линиям данных. Последовательный протокол не предусматривает блокирование, поэтому легко обеспечивается латентность, сопоставимая с PCI, где имеются выделенные линии для прерываний.
Практическая часть
Контрольные вопросы
Какие шины расширения используются в архитектуре ПК в настоящее время
Практическая работа №6 Тема: Интерфейсы периферийных устройств IDE и SCSI
Цель работы:Изучить назначение и особенности построения интерфейсов ВЗУ.
Теоретическая часть
Разнообразие периферийных устройств способствовало появлению у современных персональных компьютеров большого количества периферийных портов. Тенденции развития направлены на увеличение скорости передачи данных по интерфейсному соединению, а также на унификацию способов подключения устройств.
Унификация интерфейсов несет в себе много преимуществ как производителям, так и пользователям. К тому же современные стандарты позволяют подключать устройства через повторители (repeater) и концентраторы (hub), что резко сокращает количество проводов на столе пользователя. Следует отметить, что существуют однонаправленные (симплексные) интерфейсы (данные передаются в одну сторону) и двунаправленные (дуплексные) - обмен в обе стороны. Когда устройства проводят двусторонний обмен данными по очереди, разделяя одну сигнальную линию, то интерфейс называется полудуплексным. Помимо этого передача может идти последовательно (побитно) и параллельно по нескольким линиям группами битов: тетрадами (nibble), байтами или словами.
При всем богатстве выбора интерфейсов (АТА, SCSI, USB, 1394, Fibre Channel, LPT, PC Card), которые встречаются у устройств внешней памяти (как дисковых, так и ленточных), в большинстве случаев выбирать пока приходится между двумя основными - АТА (IDE) и SCSI.
Интерфейс АТА (IDE)
Интерфейс появился в результате переноса контроллера жесткого диска ближе к накопителю, то есть создания устройств со встроенным контроллером — IDE (Integrated Drive Electronics). Стандартный для AT контроллер жесткого диска был перенесен на плату электроники накопителя с сохранением регистровой модели.
Устройства IDE имеют ряд преимуществ перед устройствами с отдельным контроллером:
За счет минимального удаления контроллера от диска удается существенно повысить быстродействие.
Снимается проблема совместимости накопителей и контроллеров по физическим форматам записи.
Упрощается схемотехника адаптера и подключение устройств к шине компьютера.
В настоящее время в качестве официального названия интерфейса устройств IDE, ориентированного на подключение к шинам ISA и родственным им, применяют аббревиатуру ATA (AT Attachment — средства подключения к компьютеру AT).
Для устройств, логически отличающихся от жестких дисков - оптических, магнитооптических, ленточных и любых других, - в 1996 году была принята спецификация ATAPI. Это пакетное расширение интерфейса, которое позволяет передавать по шине ATA устройству блоки командной информации, структура которых позаимствована из SCSI.
В спецификации АТА фигурируют следующие компоненты:
Хост-адаптер — средства сопряжения интерфейса АТА с системной шиной. Простейший адаптер ATA содержит только буферы сигналов шины дешифратор зоны адресов. Все регистры и схемы кодирования размещены в самом устройстве IDE. Шина ATA требует выделения системных ресурсов – обязательно двух областей портов ввода/вывода и линии прерывания, и дополнительно может использоваться канал DMA. Также адаптеры ATA часто размещают на звуковых картах в качестве легкого средства подключения накопителей CD – ROM.
Кроме “классических” адаптеров подключения устройств с интерфейсом ATA к шине компьютера AT, существуют и гибридные адаптеры для подключения ATA HDD к шинам XT и MCA или, например, к LPT порту. Хостом будем называть компьютер с хост-адаптером интерфейса АТА.
Кабель-шлейф с двумя или тремя IDC-разъемами. В стандартном кабеле одноименные контакты всех разъемов соединяются вместе. Спецификация требует использования плоского многожильного кабеля (Flat cable stranded 28 AWG) типа ЗМ 3365-40 с 40 контактами или эквивалентного, возможно применение и экранированного кабеля (Flat cable stranded 28 AWG ЗМ 3517-40 shielded) с 80 контактами. Длина кабеля не должна превышать 0,46 м (18"), допустимая емкость проводников не более 35 пФ.
Ведущее устройство (Master), в спецификации АТА официально называемое Device-0 (устройство-0).
Ведомое устройство (Slave), в спецификации официально называемое Device-1 (устройство-1).
Если к шине АТА подключено одно устройство, оно должно быть ведущим. Если подключены два устройства, одно должно быть ведущим, другое — ведомым. О своей роли (ведущее или ведомое) устройства обычно «узнают» с помощью предварительно установленных конфигурационных джамперов. В редких случаях, когда применяется «кабельная выборка» CS роль устройства определяется его положением на специальном кабеле-шлейфе.
Оба подключенных устройства воспринимают команды от хост-адаптера одновременно. Однако исполнять команду будет лишь выбранное устройство.
Подключение устройств осуществляется 40- или 80-жильным кабелем, тактовая частота 16.5 МГц (половина частоты PCI), контроллер расположен в южном мосту (в случае ATA-100 может использоваться внешний контроллер).
Соответственно, пропускная способность в режиме PIO Mode 4 - 16.5 Мб/с, в режиме Ultra DMA33 - 33 Мб/с, Ultra DMA66 - 66 Мб/с (работа по обоим фронтам тактирующего сигнала и используется 80-жильный кабель, в котором сигнальные провода экранированы друг от друга заземленными, что позволило существенно улучшить временные параметры сигнала), Ultra DMA100 - 100 Мб/с, UltraDMA133 - до 133 Мбайт/с. Тут, как обычно, максимальная пропускная способность недостижима, и в любом случае скорость передачи ограничивается скоростью линейного чтения с диска. Единственный случай, когда скорость может приближаться к максимальной - если данные берутся непосредственно из буфера винчестера.
Интерфейс АТА (IDE) является самым массовым, у него есть ряд достоинств, но есть и недостатки, в ряде случаев делающие его применение нежелательным.
Плюсы АТА:
• Низкая цена устройств и кабелей, отсутствие потребности в терминаторах.
• Легкость конфигурирования устройства (у современных устройств достаточно указать его положение одним джампером).
• Относительно высокая скорость передачи данных.
• Высокая эффективность в простых конфигурациях (при отсутствии потребности в одновременной работе с двумя устройствами на одной шине).
Минусы АТА:
• Малое количество подключаемых устройств. К одной шине могут подключаться не более двух устройств, типовое количество шин — 2, максимальное — 4 (предел — 8 устройств в компьютере).
• Используется только для подключения внутренних устройств (правда, в их число могут входить и съемные винчестеры).
• Ассортимент устройств меньше, чем для SCSI, правда, все устройства широкого применения (винчестеры, НМОД, Zip, приводы CD и DVD, CD-рекордеры) существуют и с интерфейсом ATA/ATAPI.
• Низкая эффективность использования шины при работе многозадачных систем с несколькими устройствами. На время исполнения команды (до готовности к передаче данных) одно устройство блокирует шину, не позволяя даже дать задание другому. Средства многозадачности, описанные в АТА-4, гораздо слабее, чем в SCSI, и реально практически не используются.
• Незащищенность от ошибок передачи по шине. Контроль передач выполняется только в режимах UltraDMA, его поддержка применяется далеко не всегда (из-за несовершенства драйверов и незнания пользователей).
Новый интерфейс АТА133 имеет максимальную пропускную способность 133 Мбайт/с, но он не поддержан производителями и не стандартизирован.
Конечно, для многих современных дисков интерфейса АТА100 более чем достаточно, чтобы реализовать их скоростные возможности. И в этом смысле может быть не совсем понятно, зачем потребовался интерфейс АТА133. Ответить на этот вопрос можно так: дело здесь не в увеличившейся пропускной способности, а в максимально возможном объеме жесткого диска. Стандарт АТА100 допускает использование максимального объема жесткого диска до 137 Гбайт, что связано с 28-битной адресацией сектора. Современные диски вплотную подошли к этому пределу, поэтому дальнейшее увеличение емкости дисков просто невозможно в стандарте АТА100. В стандарте же АТА133 (и в этом его главное преимущество) используется 48-битная адресация сектора, что позволяет адресовать диски с невероятно большим объемом — 144 Пбайт (петабайт).
Интерфейс Serial ATA
Параллельный интерфейс ATA достиг пропускной способности 100 Мбайт/с в режиме
UltraDMA Mode 5.
Есть несколько способов повысить пропускную способность интерфейса: увеличить разрядность шины данных, или увеличить тактовую частоту передачи, или сделать и то и другое сразу. Однако практическая реализация таких способов наталкивается на непреодолимые (в настоящий момент) проблемы, поскольку увеличение разрядности шины данных (то есть когда передача становится все более «параллельной») накладывает жесткие ограничения на максимальную частоту передачи. Это вызывает сложности синхронизации, возникновение паразитных модуляционных сигналов при одновременном переключении сигналов в соседних проводах, интерференцию сигналов на высоких частотах и т.д. Поэтому для реализации большей пропускной способности был выбран путь последовательной передачи данных: разрядность шины данных свели к минимуму и повысили тактовую частоту передачи.
Для повышения пропускной способности интерфейса и был создан последовательный интерфейс Serial ATA.
Новый стандарт, в котором реализован метод последовательной передачи данных, получил название Serial АТА (Serialized AT Attachment). В этом стандарте версии 1.0 предусмотрена максимальная пропускная способность 155 Мбайт/с, а об ограничениях на размеры дисков можно просто забыть на ближайшие лет десять. Конечно, цифра 150 Мбайт/с не слишком впечатляет по сравнению со 133 Мбайт/с в стандарте РАТА133. Стандарт Serial АТА имеет весьма высокие потенциальные возможности, а в следующих версиях Serial АТА предусматривается удвоение скорости передачи, то есть сначала 300 Мбайт/с, а затем и 600 Мбайт/с. Учитывая, что на сегодняшний момент скорость чтения жестких дисков составляет порядка 50-60 Мбайт/с, это очень неплохой задел на будущее.
Правда, здесь нужно сделать одну оговорку. Сегодняшняя PCI-шина в обычных настольных ПК (не серверный вариант) является 32-битной и 33-мегагерцевой, а ее максимальная пропускная способность составляет 133 Мбайт/с. Следовательно, если контроллеры Serial АТА будут реализовываться как PCI-устройства, то все их преимущества сведутся на нет самой PCI-шиной. Поэтому, параллельно с разработкой нового стандарта SATA ведутся работы и по разработке новой универсальной шины PCI-Express.
Стандарт SATA150 подразумевает последовательную передачу данных, а потому в новых кабелях всего четыре провода. Одна пара работает на передачу, а другая — на прием, то есть реализуется полнодуплексный режим передачи.
В отличие от традиционного стандарта Parallel АТА, где длина кабеля не превышала 80 см, в стандарте SATA 1.0 размер кабеля может достигать 1 м, а ширина разъема всего 8 мм. Другой особенностью стандарта SATA является организация взаимодействия между контроллером и диском по принципу «точка-точка» (peer-to-peer).
В стандарте SATA к одному контроллеру каждый жесткий диск подключается своим кабелем, поэтому каждому устройству стандарта SATA предоставляется вся полоса пропускания целиком. Программно хост видит множество устройств, подключенных к контроллеру, как набор каналов ATA, у каждого из которых имеется единственное ведущее устройство.
Предусмотрена поддержка технологи hot swap (использование дисков с горячей заменой).
Стало возможным отключение и подключение дисков на ходу, при работающем компьютере. Новый винчестер автоматически определяется операционной системой (начиная с. Windows 98SE).
Serial АТА полностью программно совместим с Parallel АТА.
Также SATA отличается малым энергопотреблением — всего 250 мВ, в отличие от стандартных 5B y IDE. У нового интерфейса есть и еще одно преимущество - очень высокая помехозащищенность и невосприятие внешних электромагнитных полей.
Интерфейс SCSI
SCSI (Small Computer System Interface) – интерфейс системного уровня стандартизированный ANSI, в отличие от других интерфейсов, представляет собой шину: сигнальные выводы множества устройств – абонентов соединяются друг с другом “один в один”. В отличие от “жестких” шин расширения, SCSI – шина реализуется в виде кабельного шлейфа.
Интерфейс SCSI используется как во внутренних устройствах, так и во внешних. Интересно отметить, что, по сути, контроллер SCSI позволяет не просто соединить устройства, а формирует своеобразную универсальную шину на системном уровне. Это позволяет устройствам производить обмен друг с другом, минуя центральный процессор. SCSI-интерфейс позволяет подключать одновременно до 15 устройств к одному контроллеру (Fast Wide SCSI, Wide Ultra SCSI, Wide Ultra2 SCSI, Ultra3 SCSI) внутреннего и внешнего исполнения. Каждое подключенное устройство получает свой номер.
Одно из них — хост-адаптер (Host Adapter) связывает шину SCSI с системной шиной компьютера, семь других свободны для периферии. К шине могут подключаться дисковые внутренние и внешние накопители (винчестеры, сменные винчестеры, CD-ROM, магнитооптические диски и др.), стримеры, сканеры и другое оборудование, применяемое не только для IBM PC.
Каждое устройство, подключенное к шине, имеет свой идентификатор SCSI ID, который передается позиционным кодом по 8-битной шине данных (отсюда и ограничение на количество устройств на шине). Устройство (ID) может иметь до 8 подустройств со своими LUN (Logical Unit Number — логический номер устройства). Любое устройство может инициировать обмен с другим целевым устройством (Target). Режим обмена по SCSI-шине может быть асинхронным или более производительным — синхронным с согласованием скорости (Synchronous Negotiation), передача данных контролируются по паритету.
У интерфейса SCSI самый главный недостаток — более высокая цена как на устройства, так и на адаптеры и аксессуары (кабели и терминаторы).
Плюсы SCSI:
• Большое число устройств, которые можно подключить: до 7 устройств к одной узкой (или гибридной) шине контроллера и до 15 к широкой. Контроллер может быть 2-, 3-канальным, контроллеров может быть установлено несколько.
• Используется для подключения и внутренних, и внешних устройств.
• Высокая скорость передачи данных по шине — у распространенных современных устройств и контроллеров Wide Ultra2 SCSI — 80 Мбайт/с, у «продвинутых» Ultra3 — 160 Мбайт/с, в ближайшее время ожидается 320 Мбайт/с.
• Высокая эффективность использования шины в многозадачных системах: на время выполнения команды (пока данные к передаче не готовы) устройство не занимает шину, освобождая ее для обмена контроллера с другими устройствами.
• Высокая эффективность работы устройств в многозадачных системах: поддержка очередей и цепочек команд.
• Широкий ассортимент подключаемых устройств, выпускаемых как для IBM PC-совместимых компьютеров, так и для других платформ.
Минусы SCSI:
• Высокая цена устройств и контроллеров, усугубляемая ценой кабелей и терминаторов.
• Сложность конфигурирования (установка большого числа конфигурационных джамперов, правильная установка терминаторов).
Практическая часть
Контрольные вопросы
1. Для чего предназначен интерфейс IDE?
2. Дать основные характеристики IDE
3. Для чего предназначен интерфейс SCSI?
4. Дать основные характеристики SCSI.
Практическая работа №7 Тема: Параллельные и последовательные порты и их особенности работы
Цель: научиться соединять компьютеры в сеть через различные порты, настраивать их, передавать данные через созданные соединения и с использованием файлового менеджера Total Commander.
Средства для выполнения работы:
Теоретическая часть
Самая простая с точки зрения технической реализации возможность установления связи между двумя компьютерами - прямое соединение (peer-to-peer) по последовательным или параллельным портам. Все современные операционные системы (Linux, Windows) имеют встроенные функции для реализации такого вида соединения.
Для реализации прямого соединения по последовательным (COM) и параллельным (LPT) портам необходим только соединительный кабель и, естественно, соответствующие разъемы на компьютерах.
В общем случае алгоритм соединения двух компьютеров выглядит следующим образом:
Несмотря на относительную простоту установления такого соединения, оно обладает рядом недостатков, таких как:
Таблица, приведенная ниже, показывает, насколько различаются скорости передачи данных при прямом соединении и в 100-мегабитной сети при передачи файла объемом 2 Мб.
Время, необходимое для передачи файла объемом 2 Мб при различных типах соединения | ||
Последовательный порт | Параллельный порт | 100-мегабитная сеть |
14 мин. | 80 с. | 0,5с. |
Таблица 1. Сравнение времени передачи файла при различных типах соединение
Скорость передачи данных при использовании стандартных возможностей ОС не очень высокая, но ее можно повысить. Можно воспользоваться файловыми менеджерами типа Norton Commander, которые лучше организуют передачу данным по этим портам.
Прямое соединение подходит в качестве решения только при передаче сравнительно небольших по объему файлов. Типичным случаем, когда прямая связь себя оправдывает, является файловый обмен между настольным компьютером и ноутбуком.
К прямому соединению условно можно отнести соединение двух компьютеров посредством: 1) модемов и 2) сетевых карт.
В первом случае соединение может быть на сколь угодно большом расстоянии, но для организации такого вида связи необходимо иметь телефонную линию и модем. Скорость при этом не может быть выше 33 Кбит/с. Алгоритм установления соединения практические аналогичен прямому соединению посредством параллельных и последовательных портов.
Во втором случае для организации соединения необходимо наличие сетевых карт в компьютерах и специальным образом подготовленный кабель типа «витая пара». При таком соединении типичная скорость передачи данных достигает 100 Мбит/с при расстоянии между компьютерами не более 100 м.
Практическая часть
Задание 1. Установите соединение двух компьютеров через параллельные порты.
Задание 2. Передайте файл с ПК на ПК через созданное подключение.
Задание 3. Осуществите передачу файлов на удаленный компьютер с использованием файлового менеджера Total Commander.
Задание 4. Настройте входящее модемное подключение к вашему ПК.
Контрольные вопросы
Практическая работа № 8 (часть 1) Тема: Программирование арифметических и логических команд
Цель: Практическое освоение составления простейших программ на языке Ассемблера и работы с программами TASM и TLINK.
Теоретическая часть
Несмотря на то, что современные языки программирования высокого уровня обеспечивают не только удобное, но и эффективное системное программирование, в тех случаях, когда особенно важно получить оптимальный объектный код, необходимо использовать Ассемблер.
Исходный модуль программы на Ассемблере представляет собой последовательность строк, имеющих следующий формат:
[метка] команда [операнд(ы)] [комментарий]
После метки ставится двоеточие, команда и операнд разделяются по крайней мере одним пробелом ; если операндов несколько, то они разделяются запятыми; перед комментарием ставится точка с запятой. В квадратные скобки заключены необязательные компоненты.
Ассемблер имеет ряд операторов, которые позволяют управлять процессом ассемблирования и формирования листинга. Эти операторы называются псевдокомандами или директивами. Они действуют только в процессе ассемблирования программы и не генерируют машинных кодов.
Любые ассемблерные программы содержат по крайней мере один сегмент-сегмент кода. В некоторых программах используются сегмент для стековой памяти и сегмент данных для определения данных. Сегмент описывается директивой SEGMENT следующим образом:
имя SEGMENT [параметры]
имя ENDS
Сегмент кода содержит одну или несколько процедур, определяемых директивой PROC:
имя сегмента SEGMENT имя процедуры PROC
RET имя процедуры ENDP имя сегмента ENDS
Пример простой исходной программы на Ассемблере представлен ниже:
TITLE PROG1 ПРИМЕР РЕГИСТРОВЫХ ОПЕРАЦИЙ;
STACKSG SEGMENT PARA STACK 'Stack'
DB 12 DUP(?) STACKSG ENDS
CODESG SEGMENT PARA 'Code' BEGIN PROC FAR ASSUME SS:STACKSG,CS:CODESG,DS:NOTHING
PUSH DS ; cохранение DS в стеке. (1)
SUB AX,AX ; формирование нуля в АХ. (2)
PUSH AX ; cохранение АХ в стеке. (3)
MOV AX,0123H ; передача константы в регистр. (4)
ADD AX,0025H ; сложение регистра с константой. (5)
MOV BX,AX ; передача из регистра в регистр. (6)
ADD BX,AX ; сложение содержимого регистров. (7)
MOV CX,BX ; передача из регистра в регистр. (8)
SUB CX,AX ; вычитание содержимого регистров (9)
SUB AX,AX ; формирование нуля в АХ. (10)
NOP ; нет о перации (задержка). (11)
RET ; возврат из процедуры. (12)
BEGIN ENDP ;КОНЕЦ ПРОЦЕДУРЫ.
CODESG ENDS ;КОНЕЦ СЕГМЕНТА.
END BEGIN ;КОНЕЦ ПРОГРАММЫ.
В приведенном примере директива ASSUME сообщает Ассемблеру соответствие между сегментными регистрами и именами сегментов.
Исходный текст программы на Ассемблере создается с использованием любого доступного текстового редактора и сохраняется на магнитном диске под именем *.ASM или *. TXT. Компилятор Турбо Ассемблер является программой в виде загрузочного файла TASM.EXE, работающей в режиме командной строки. Он вызывается командой
TASM имя, где имя является именем исходного файла . Предполагается, что TASM и исходный файл сохраняются в одном каталоге. При вызове компилятора могут задаваться режимы его работы. Например, запись в командной строке:
TASM/ZI PROG1 PROG1 PROG1
приводит к созданию из исходного файла PROG1.ASM объектного модуля PROG1.OBJ и файла листинга PROG1.LST. Параметр /ZI приводит к внесению в файл листинга полных сведений о номерах строк и именах исходного модуля.
С целью создания исполнительной программы необходимо произвести компоновку объектных модулей с библиотечными модулями. Компоновщик является программой с именем TLINK.EXE. Он может быть вызван командой
TLINK имя объектного модуля
После компоновки создается загрузочный файл PROG1.EXE, а также файл карты сборки PROG1.МАР.
Компоновка в режиме TLINK /t приводит к созданию исполняемого *.СОМ файла, а компоновка в режиме TLINK /v включает в файл исполняемой программы информацию, необходимую для ее инициализации и отладки.
Практическая часть
1. Изучить методические указания.
2. Используя текстовый редактор, создайте исходный модуль программы HELLO.ASM:
Data SEGMENT
Greet DB 'Привет, Маша!',13,10,'$' Data ENDS
Stack SEGMENT Stack
DB 100H DUP(?) ;стек размером 256 байтов.
Stack ENDS
ASSUME CS:Code, DS:Data, SS:Stack
Code SEGMENT Start:
загрузка номера сегмента (1) в регистр DS. (2) загрузка в DX адреса симв. строки. (3) задание функции вывода строки. (4) вывод строки. (5) завершение программы через (6) систем ную функцию возврата (7) в диспетчер MS DOS. (8) |
MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET Greet
MOV AH,9
INT 21H
MOV AL,0
MOV AH,4CH
INT 21H
Code ENDS
END Start ;адрес начала программы.
3. Используя компилятор Турбо Ассемблер, создайте файлы HELLO.OBJ и HELLO.LST. Выведите на экран текст HELLO.LST и проанализируйте его.
4. Используя компоновщик TLINK, создайте файлы HELLO.EXE и HELLO.MAP.
5. Выведите на экран файл HELLO.MAP и ознакомьтесь с ним.
6. Убедитесь в работоспособности программы HELLO.
7. Проанализировать приведенную ниже программу HELLO.ASM и вставить в нее фрагмент, реализующий вывод на экран Вашей фамилии, имени, отчества с помощью символьной переменной STUDENT
8. Подготовить ответы на контрольные вопросы.
Контрольные вопросы
1. Какова цель сегментации памяти?
2. Что такое базовый адрес сегмента?
3. Какие значения может принимать базовый адрес сегмента?
4. Каков максимальный размер сегмента и почему?
5. Какие типы сегментов использует ассемблерная программа?
6. Какими директивами описывается сегмент?
7. Каково назначение директивы ASSUME?
8. Каково назначение директив TITLE и PAGE?
9. Что такое процедура и какими директивами она определяется?
10. Что такое ассемблирование и компоновка программы?
11. Каково содержание файлов с расширениями *.ASM, *.LST, *.OBJ, *.MAP, *.EXE?
Практическая работа N8 (часть 2) Тема: Программирование арифметических и логических команд
Цель: Получение практических навыков использования операций сложения, вычитания и умножения; освоение использования окон Module и Inspect программы TURBO DEBUGGER.
Теоретическая часть
Если программа скомпонована в режиме /v, то после ее загрузки отладчиком, открывается окно Module. Cимвол стрелка показывает на подлежащую исполнению команду. Клавишей F2 можно расставлять и снимать ловушки в той строке, где расположен курсор. Окно Inspect можно открыть из локального меню окна Module (alt-F10). При этом отладчик запрашивает имя подлежащих контролю переменной или регистра. Контролировать состояния переменных можно также в окнах Variables и Watches, вызываемых из пункта View главного меню.
Окно переменных Variables позволяет наблюдать все переменные, доступные в месте останова программы. В локальном окне пункт Inspect дает доступ к полной информации о типе, значении и адресе хранения выделенной переменной. Отдельные переменные программист может задать для анализа в окне Watches. Для помещения переменной в это окно следует подвести курсор к идентификатору переменной и нажать Ctrl+W. Для анализа выражения его следует выделить (Ins+ стрелки), а затем нажать Ctrl+W. Используя локальное меню, можно исследовать внутреннюю структуру переменных. Положение и размер окон можно изменять, пользуясь курсорными клавишами при включенном режиме Scroll Loсk (Размер регулируется при нажатой клавише Ctrl).
Практическая часть
1. Изучить методические указания.
2. Подготовить ответы на контрольные вопросы.
3. Введите программу PROG4 с фрагментом из домашнего задания, используя текстовый редактор.
4. Оттранслируйте и скомпонуйте программу в режимах TASM/ZI, TLINK/V.
5. Загрузите отладчик и программу. Проведите ее трассировку. Целесообразно выполнять работу по частям, составляя и отлаживая законченные по смыслу фрагменты.
6. Наблюдайте результаты выполнения команд, используя окна Variables, Watches и/или Inspecting, открываемые из пункта View Главного меню. Сравнивайте полученные результаты с ожидаемыми. Для наблюдения состояния флажков используйте окно Registers.
7. Проанализировать приведенную ниже программу PROG4, написать комментарии ко всем командам сегмента кода, указав при этом тип используемых операндов и способ адресации.
8. Используя в качестве операндов переменные, определенные в сегменте данных, в соответствии с вариантом задания ( Таб 4.1.) написать команды для выполнения указанных в таблице операций, вставить их в соответствующий фрагмент программы PROG4.
Таблица 4.1.
№ вар. | операция | 1-ый операнд | 2-ой операнд |
сложение | регистр | константа байт | |
сложение | регистр | переменная в памяти | |
умножение | регистр | регистр | |
сложение | переменная в памяти | константа байт | |
сложение | переменная в памяти | константа слово | |
умножение | регистр | переменная в памяти | |
вычитание | регистр | константа слово | |
сложение | переменная в памяти | константа байт | |
вычитание | регистр | константа байт | |
сложение | переменная в памяти | регистр | |
умножение | переменная в памяти | константа слово | |
вычитание | ЯП- косвенная адресация | регистр | |
вычитание | регистр | переменная в памяти | |
вычитание | переменная в памяти | константа слово | |
вычитание | переменная в памяти | константа байт |
Пример программы
TITLE PROG4 АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ
;
DATASG SEGMENT PARA
X0 DB 64H
X1 DB 40H
X2 DB 16H
X3 DW 4000H
X4 DW 2000H
X5 DW 1000H
Z1 DD 0123BC62H
Z2 DD 0012553AH REZ DD ? DATASG ENDS
STACKSG SEGMENT 'Stack'
DB 12 DUP(?) STACKSG ENDS
CODESG SEGMENT PARA 'Code'
BEGIN PROC FAR
ASSUME SS:STACKSG,CS:CODESG,DS:DATASG
PUSH DS SUB AX,AX корректное
PUSH AX MOV AX,DATASG завершение
MOV DS,AX программы. Инициализация сегментного регистра DS.
ПРИМЕРЫ СЛОЖЕНИЯ
MOV AL,X0
MOV BL,X1
ADD AL,BL
ADD AL,X2
ADD X0,BL
ADD BL,
10H ADD X0,25H
ПРИМЕРЫ ВЫЧИТАНИЯ
MOV AX,X3
MOV BX,X4
SUB AX,BX
SUB AX,X5
SUB X3,BX
SUB BX,1000H
SUB X3,256H;
ПРИМЕР СЛОЖЕНИЯ ДВОЙНЫХ СЛОВ
LEA SI, Z1;адрес первого двойного слова.
LEA DI, Z2;адрес второго двойного слова
LEA BX, REZ. ;адрес результата.
MOV AX, [SI] ;загрузка младшего слова Z1.
ADD AX, [DI] ;сложение младших слов Z1 и Z2.
MOV WORD PTR [BX], AX сохранение младшего слова результата.
INC SI формирование адреса старшего слова Z1
INC SI формирование адреса старшего слова Z2.
INC DI загрузка старшего слова Z1.
INC DI сложение старших слов Z1 и Z2
MOV AX, [SI] и возможного переноса.
ADC AX, [DI] сохранение старшего слова результата.;
MOV WORD PTR [BX+2], AX
.ПРИМЕР УМНОЖЕНИЯ MUL
MOV AL,X0
MUL X1
MOV AX,X3
MUL X5
MOV CX, 20H
MUL CX
ПРИМЕР УМНОЖЕНИЯ IMUL
MOV AX,X3
IMUL X3
MOV CX, -5
IMUL CX
RET
BEGIN ENDP ; КОНЕЦ ПРОЦЕДУРЫ ;
CODESG ENDS ;КОНЕЦ СЕГМЕНТА ;
END BEGIN ;КОНЕЦ ПРОГРАММЫ
Контрольные вопросы
Практическая работа N9 Тема: Программирование переходов
Цель: Изучение механизма передачи управления в программе; получение практических навыков отладки разветвляющихся программ.
Теоретическая часть
Приложение кодировки символов
Компьютер может обрабатывать только информацию, представленную в цифровом коде. При вводе текстовой информации буквы и символы кодируются определенными числами, а при выводе их на экран или принтер по каждому коду символа строится изображение символа. Соответствие между набором символов и их кодами называется кодировкой символов.
Как правило, коды имеют длину один байт и принимают значения от 0 до 255 (в настоящее время приобретает распространение и двухбайтная кодировка Unicode). Программы, работающие под DOS, используют ту кодировку, которая имеется в знакогенераторах адаптеров мониторов. На импортных компьютерах IBM PC используется Американский национальный стандартный код для обмена информацией ASCII (American Standard Code for Information Interchange).
В нашей стране разработаны кодировки, имеющие символы кириллицы. При этом символы с кодами 0...127 обычно совпадают с кодами ASCII, так что программа, выводящая сообщение на английском языке, будет работать одинаково на любом персональном компьютере. Альтернативная кодировка ГОСТа (Табл. П1) имеет символы кириллицы в тех позициях, где в кодировке ASCII находятся относительно редко используемые символы национальных европейских алфавитов. Коды представлены в десятичной (D) и шестнадцатеричной (H) системах.
Первые 32 кода (1...32) имеют два значения: управляющие символы и изобразительные символы. Когда DOS пересылает эти коды на монитор или принтер, они выполняют управляющие функции, а не отображают символы, например:
8-возврат на одну позицию; 9-горизонтальная табуляция; 10- перевод строки; 13- возврат каретки; 32- пробел.
Для получения изображения символов эти коды необходимо занести в буфер экрана (начальный адрес 0В800:0000Н).
Программы, работающие в Windows, не используют для вывода средства знакогенератора адаптера монитора. Windows предоставляет более удобные средства, поддерживая масштабируемые шрифты. В кодировке текстовых шрифтов для Windows отсутствуют символы псевдографики, т.к. Windows поддерживает настоящую графику, но имеется большое количество букв европейских языков и полиграфических символов. В русской версии кодировки для Windows символы русского алфавита имеют коды от 192 до 255.
Практическая часть
1. Изучить методические указания.
2. Подготовить ответы на контрольные вопросы.
Ниже приведена программа CHANGE , которая в заданной текстовой строке заменяет латинские строчные буквы заглавными.
Коды строчных и заглавных букв английского алфавита можно найти в Таблице кодировки символов (Приложение, с 23).
3. Проанализировать приведенную ниже программу CHANGE, дополнить каждую команду комментарием.
4. . Введите программу, используя текстовый редактор. Оттранслируйте и скомпонуйте программу в режимах TASM/ZI, TLINK/V.
5. Загрузите отладчик и программу. Произведите ее пошаговое выполнение. Наблюдайте результаты выполнения команд.
6. Установите ловушку на одной из команд подпрограммы. В точке останова отройте в окне CPU локальное меню и выберите пункт CALLER.Пронаблюдайте исполнение этой инструкции.
7. Пронаблюдайте результат выполнения программы в окне WINDOW (режим USER SCREEN).
8. Введите вариант программы из домашнего задания, обеспечивающий замену заглавных букв строчными.
9. Убедитесь в работоспособности второго варианта программы.
ПРИМЕР ПРОГРАММЫ
TITLE CHANGE - ЗАМЕНА СТРОЧНЫХ БУКВ ЗАГЛАВНЫМИ
DATASG SEGMENT PARA
MYTEXT DB 'Our Native Town' ,13,10, '$'
DATASG ENDS
STACKSG SEGMENT 'Stack'
DB 12 DUP(?) STACKSG ENDS
CODESG SEGMENT PARA 'Code'
BEGIN PROC FAR
ASSUME SS:STACKSG, CS:CODESG, DS:DATASG
PUSH DS
SUB AX,AX
PUSH AX
MOV AX, DATASG
MOV DS, AX
LEA BX, MYTEXT
MOV CX, 10H MT1: MOV AH, [BX]
CMP AH, 61H
JB MT2
CMP AH, 7AH
JA MT2
CALL COR MT2: INC BX
LOOP MT1
LEA DX, MYTEXT
MOV AH, 09H INT 21H RET BEGIN ENDP
COR PROC NEAR
NOP
AND AH, 0DFH
MOV [BX], AH
RET COR ENDP CODESG ENDS END BEGIN
10. Ввести свой собственный текст на английском языке, содержащий строчные и заглавные буквы.
11. Изменить программу так, чтобы в соответствии с вариантом задания (Таб 5.1.) она обеспечивала:
Таблица 5.1. | |
№варианта | Заменить |
а) ‘a’ на ‘A’ б) все заглавные строчными | |
а) строчные от ‘a’ до ‘f’ заглавными б) все заглавные строчными | |
а) строчные ‘b’и’c’ заглавными б) все заглавные строчными | |
а) строчные от ‘f’ до’z’ заглавными б) все заглавные строчными | |
а)символ ’( ’ на символ ‘) ’ б) все заглавные строчными | |
а) ‘Z’ на ‘z’ б) все заглавные строчными |
Контрольные вопросы
1. Назовите три типа команды безусловного перехода.
2. Какой может быть длина перехода в разных типах команды JMP?
3. Содержимое каких регистров модифицируется при выполнении безусловных переходов разных типов?
4. Какова максимальная длина условного перехода?
5. Каким образом может быть указан адрес перехода?
6. Какие флаги могут быть использованы в командах условного перехода после выполнения команды сложения?
7. Приведите возможные команды условных переходов, если после сравнения беззнаковых чисел D1иD2 оказалось: а)D1=D2, б) D1< D2 , в) D1>D2.
8. Приведите возможные команды условных переходов, если после сравнения чисел со знаками P1иP2 оказалось: а) Р1 *Р2, б) Р1<Р2, в) Р1 >Р2.
9. Какие команды могут использоваться для организации циклов?
10. Какова максимальная длина переходов при организации циклов?
11. Какие признаки , кроме СХ=0, могут быть использованы при организации циклов?
12. Как осуществляется переход к процедурам разных типов?
13. Назовите варианты команды возврата из процедуры.
D | H | A | B | C | D | E | ||||||||||
► | @ | P | ' | p | А | Р | а | II | L | ╨ | р | |||||
© | < | ! | A | Q | a | q | Б | С | б | ш | -L | =р | с | |||
в | I | " | B | R | b | r | В | Т | в | т | Y | т | ||||
V | !! | # | C | S | c | s | Г | У | г | |- | "- | у | ||||
♦ | If | $ | D | T | d | t | Д | ф | д | -| | — | 1= | Ф | |||
* | § | % | E | U | e | u | Е | Х | е | =1 | -|- | |= | х | |||
» | — | & | F | V | f | v | Ж | Ц | ж | |= | Ц- | ц | ||||
• | I | ' | G | W | g | w | Ч | -л | li- | -Ц- | ч | |||||
т | ( | H | X | h | x | И | ш | и | =1 | lt | =|= | Ш | ||||
9 10 | 9 A | о Ш | —> | ) * | 9 : | I J | Y Z | i j | y z | Й К | щ ъ | й к | II | =!t | -1 r | Щ ъ |
м л а д ш а я ч а |
м л а д ш а я ч а с |
Практическая работа №10 Тема: Программирование ввода- вывода
Цель: Получение практических навыков использования различных способов адресации и отладки программ с использованием ловушек программы TURBO DEBUGGER.
Практическая часть
1. Изучить методические указания.
2. Подготовить ответы на контрольные вопросы.
3. Написать комментарии к командам приведенной ниже программы PROG3.
4. Используя примеры из PROG3, в соответствии с вариантом задания из Таб 3.1 написать фрагмент программы для выполнения указанных в таблице операций, определив в сегменте данных необходимые переменные. (В таблице ЯП означает «ячейка памяти»).
Таблица 3.1. | |||
№ вар. операция 1-ый операнд 2-ой операнд | |||
пересылка пересылка сложение | регистр регистр переменная в памяти | константа байт регистр константа слово | |
пересылка пересылка сложение | переменная в памяти регистр регистр | регистр переменная в памяти ЯП- базовая адресация. | |
пересылка пересылка вычитание | регистр регистр 3-ий элемент блока данных | адрес блока данных 2-ой элемент блока данных регистр | |
пересылка пересылка сложение | регистр индексный регистр элемент блока данных Z | адрес блока данных ноль элемент блока данных Z | |
пересылка сложение пересылка | переменная в памяти перем5нная в памяти регистр | константа байт регистр ЯП- базово-инд.адресация | |
пересылка пересылка сложение | регистр регистр регистр | константа слово константа байт переменная в памяти | |
пересылка пересылка вычитание | регистр ЯП- косвенная адресация переменная в памяти | константа слово константа байт регистр | |
пересылка сложение пересылка | регистр регистр 5-ый элемент блока данных | 5-ый элемент блока данных регистр регистр | |
пересылка пересылка вычитание | регистр регистр регистр | адрес блока данных 3-ий элемент блока данных регистр | |
пересылка сложение пересылка | переменная в памяти регистр переменная в памяти | константа слово переменная в памяти регистр | |
пересылка пересылка вычитание | сегментный регистр регистр индексный регистр | переменная в памяти константа слово регистр | |
пересылка пересылка сложение | ЯП- косвенная адресация регистр ЯП- косвенная адресация | константа байт константа слово регистр | |
пересылка пересылка сложение | 0-ой элемент блока данных регистр регистр | константа байт константа слово 0-ой элемент блока данных | |
пересылка пересылка сложение | регистр регистр регистр | ноль смещение переменной Х регистр | |
пересылка пересылка вычитание | переменная в памяти переменная в памяти регистр | 1-ый элемент блока данных константа байт константа слово |
5. Вставьте в приведенную ниже программу PROG3 вместо многоточия фрагмент программы из домашнего задания.
6. В сегменте данных определите необходимые переменные.
7. Введите программу, оттранслируйте и скомпонуйте ее.
8. Загрузите отладчик и программу. Проведите ее трассировку. На каждом шаге контролируйте результаты выполнения команды по изменению содержимого регистров и ячеек памяти. Пронаблюдайте работу стека.
9. Перезагрузите программу. В меню View выберите режим Breakpoints (точки останова, ловушки). Введите номера строк программы, в которых необходимо проконтролировать промежуточные результаты. Запускайте программу на исполнение (клавиша F9).
ПРИМЕР ПРОГРАММЫ
TITLE PROG3 СПОСОБЫ АДРЕСАЦИИ ОПЕРАНДОВ
;
DATASG SEGMENT PARA
DB 16 DUP(‘@’) DATASG ENDS
STACKSG SEGMENT PARA 'Stack'
DB 12 DUP(?) STACKSG ENDS
CODESG SEGMENT PARA 'Code'
ASSUME SS:STACKSG,CS:CODESG,DS:DATASG
BEGIN PROC FAR
PUSH DS ;организация корректного выхода
SUB AX,AX ; после завершения программы, оформ-
PUSH AX ; ленной в виде процедуры типа FAR.
CMC
CLC
MOV AX, 11
MOV BX, 6
SUB AX, BX
MOV SI, DATASG
DEC BYTE PTR [SI]
SUB [SI+1], AX
MOV DI, [SI+1]
MOV DI, 3
SUB BYTE PTR DATASG[DI], 2
PUSH AX
PUSH DATASG+2
POP AX
POP [SI+2]
RET
BEGIN ENDP ;КОНЕЦ ПРОЦЕДУРЫ
CODESG ENDS ;КОНЕЦ СЕГМЕНТА
END BEGIN ;КОНЕЦ ПРОГРАММЫ
КРАТКАЯ ИНФОРМАЦИЯ
Выбор режима Breakpoints вызывает высвечивание окна ловушек. Это окно состоит из двух рамок. Левая содержит список ловушек, а в правой высвечивается информация о выбранной ловушке. Ловушки можно ставить с помощью клавиши F2. Повторное нажатие клавиши F2 приводит к снятию данной ловушки. Активация/дезактивация ловушки также производится из локального меню (Alt-F10) в пункте Enable/disable, а ее снятие в пункте Remove. Снятие всех ловушек - Delete all.
Контрольные вопросы
1. Где располагаются операнды при непосредственной адресации?
2. Каков минимальный объем адресуемого участка памяти?
3. Что означает адрес слова и двойного слова?
4. Что такое регистровая адресация операндов?
5. Что используется для косвенной адресации ячеек памяти?
6. Чем отличается базовая адресация от косвенной?
7. Какие регистры используются для косвенной и для базовой адресации?
8. Для каких переменных используется индексная адресация?
9. Чем отличается индексная адресация от базовой?
10. Что используется для прямой адресации ячеек памяти?
11. Как вычисляется адрес ячейки памяти при регистровой адресации?
12. Как вычисляется адрес ячейки памяти при индексной адресации?
13. Какой способ адресации операндов обеспечивает самый короткий формат команды?
14. Какой способ адресации является самым сложным?
15. Каким образом процессоры I80х86 обращаются к портам ввода/вывода?
Практическая работа №11 Тема: Программирование и отладка программ
Цель: Практическое освоение основных функций TURBO DEBUGGER.
Теоретическая часть
Турбо отладчик (Turbo Debugger) - это современный отладчик, позволяющий отлаживать программы на уровне исходного текста и предназначенный для программистов, работающих на Турбо языках фирмы Borland. Много-численные перекрывающие друг друга окна, а также сочетание спускающихся и раскрывающихся меню обеспечивают быстрый, интерактивный пользовательский интерфейс. Интерактивная, контекстно-зависимая система подсказки обеспечит вас подсказкой на всех стадиях работы. Непосредственно после запуска отладчика открыто окно CPU. В окне CPU (ЦП) показано все состояние центрального процессора. С его помощью вы можете проверять и изменять биты и байты, составляющие код и данные программы. В окне Code (Код) для временной коррекции своей программы вы можете использовать встроенный Ассемблер. При этом инструкции вводятся точно также, как при наборе исходных операторов Ассемблера. Можно также получить доступ к соответствующим данным любой структуры данных, выводя и изменяя их в различных форматах.
В области регистров (верхняя область справа от области кода) выводится содержимое регистров центрального процессора.
Верхней правой областью является область флагов, где показано содержимое восьми флагов центрального процессора. В области флагов показано значение каждого флага ЦП.
В области данных показано непосредственное содержимое выбранной области памяти. В левой части каждой строки показан адрес данных, выводимых на данной строке. Адрес выводится в виде шестнадцатеричного значения сегмента и смещения. Значение сегмента заменяется именем сегмента DS, если значение сегмента совпадает с текущим содержимым регистра DS.
В правой части каждой строки выводятся символы, соответствующие по казанным байтам. Турбо отладчик выводит все печатаемые значения, соответствующие байтовым эквивалентам, поэтому не удивляйтесь, если на экране вы увидите странные символы - просто это символьный эквивалент шестнадцатеричных значений байтов данных.
В нижнем правом углу окна CPU показано содержимое стека
Практическая часть
1. Изучить методические указания.
2. Подготовить ответы на контрольные вопросы.
3. В соответствии с вариантом задания (Таб 2.1.) указать содержимое каждого из восьми РОН после выполнения двух заданных команд в программах HELLO и PROG1 из Лабораторной работы №8(номер строки команды помещен в поле комментариев программы и заключен в скобки).
№ варианта | строка HELLO | строка PROG1 | № варианта | строка HELLO | строка PROG1 |
Ассемблируйте исходный текст программы HELLO.ASM в режиме /zi , произведите его компоновку в режиме /v . Поместите полученные файлы в том же каталоге, что и TD.EXE.
Запустите программу TD на выполнение. После появления визитной карточки отладчика нажмите клавишу ENTER. Обратите внимание на то, что в нижней строке расположена подсказка о назначении функциональных клавиш, в верхней строке перечислены меню отладчика, а в основном поле экрана открыто окно CPU (ЦП). Клавишей ZOOM измените размер открытого окна.
Обратите внимание на то, что окно CPU разделено рамками на части, относящиеся к сегментам кода, стека, данных и РОНам. В сегменте кода команда по смещению, равному содержимому регистра IP, а в сегменте стека данные по смещению, равному содержимому регистра SP, отмечены стрелками. Клавишей TAB измените положение выделяющей информацию цветной рамки.
Нажатием комбинации клавиш alt-F10, попробуйте открыть окна локальных меню в каждой рамке окна CPU. Ознакомьтесь с их содержанием. Закрывайте окна клавишей ESC.
Используя клавишу F10, перейдите в главное меню. Откройте окно FILE. Включите режим OPEN... . Клавишей TAB выделите окно FILES. Курсорными клавишами выберите имя файла hello.exe и загрузите его. Сравните информацию, содержащуюся в рамке кода с листингом вашей программы.
В окне CPU произведите трассировку программы (пошаговое выполнение) нажатием клавиши F8. На каждом шаге контролируйте содержимое регистров, флагов и состояние стека. После завершения программы перейдите в окно WINDOW главного меню и установите режим USER SCREEN. Убедитесь, что программа выполнила свою задачу. Клавишей ESC верните изображение окна CPU.
Через окно FILE повторите загрузку программы HELLO. Перейдите в рамку сегмента данных. Откройте его локальное меню. Перейдите на смещение 100Н, используйте для этого режим GOTO. Для удобства анализа сегмента данных войдите в окно VIEW главного меню. Установите режим DAMP. Клавишей ZOOM увеличьте размеры рамки сегмента данных. Просмотрите содержимое ячеек памяти. Подводя курсор к элементам данных Вашей программы, редактируйте их шестнадцатеричные значения, используйте для этого клавиши 0-9 и a-f. Произведите запуск программы (F9). Проанализируйте результат ее работы.
Произведите проверку работы программы PROG1 из Лабораторной работы №1.
Завершите работу отладчика. Воспользуйтесь пунктом EXIT окна FILE.
Контрольные вопросы
1. Для чего предназначен отладчик?
2. Объясните смысл пунктов Главного меню в верхней строке отладчика.
3. Как загрузить отлаживаемую программу?
4. Сколько окон можно открыть из пункта Главного меню View ?
5. Из каких фрагментов состоит окно CPU?
6. Что такое локальное окно и как его открыть?
7. Какие функции обеспечивает локальное окно фрагмента кода (CODE) окна CPU?
8. 4.8.Каким образом можно редактировать ассемблерную программу?
9. Как осуществляется изменение содержимого оперативной памяти и регистров средствами отладчика?
10. Как через меню отладчика запустить программу на выполнение?
11. В каком окне можно наблюдать результат выполнения программы?
12. Что такое трассировка программы и как она осуществляется в отладчике?
Практическая работа №12 Тема: Идентификация и установка процессора.
Цель: ознакомление с идентификацией и установкой процессора
Программное обеспечение: сборка персонального компьютера (видео)
Теоретическая часть
Установка процессора
Сперва определимся, какой тип процессора вы выбрали: от этого напрямую зависит способ установки его в нашу материнскую плату..
Практическая часть
Практическая работа №13 Тема: Выбор вычислительной системы
Цель: ознакомление с практическим выбором комплектующих вычислительных систем
Теоретическая часть
Сегодня масса фирм предлагает готовые компьютеры, «заточенные» под различные задачи. Так, в прайс-листах сплошь и рядом мелькают позиции вида «офисный ПК», «игровой компьютер», «графическая станция» и т.д. и т.п. Вглядевшись в спецификации «фирменных» компьютеров повнимательнее, несложно заметить ряд уловок изготовителей. Например, они часто указывают неполное название модели видеокарты (как правило, «забывая упомянуть» буквенные индексы, выдающие более дешевую, «урезанную» версию графического адаптера). Нередко «остаются за кадром» названия фирм-производителей блока питания, жесткого диска, оптического привода и других комплектующих (в прайс-листе лаконично пишут «DVDROM, HDD 200 Gb, Video 256 Мб» и далее в том же духе).
Подобные трюки характерны в основном для небольших фирм, практикующих «отверточную» сборку; они с высокой степенью вероятности свидетельствуют об использовании в предлагаемом ПК, мягко говоря, не самых качественных комплектующих (и это при весьма солидной цене!). Таким образом, покупатель довольно часто получает неполную информацию о готовом компьютере, и нередко его вводят в заблуждение (особенно если он не является специалистом по части современного компьютерного «железа»).
Конечно, ни в коем случае нельзя утверждать, что «готовые» компьютеры – продукты исключительно низкого качества: на российском рынке сегодня присутствует масса хорошо зарекомендовавших себя фирм, которые предлагают отлично сбалансированные по конфигурации ПК с фирменной гарантией. Такие компьютеры (их еще называют брендовыми), как правило, собирают опытные специалисты в заводских условиях из качественных комплектующих (фирмам, дающим гарантию на свою продукцию, использовать некачественные комплектующие просто невыгодно). После сборки каждый системный блок тщательно тестируется на предмет выявления возможных неполадок. Купив ПК известного бренда, вы, скорее всего, получите качественную, надежную систему. Бренд – солидная гарантия от мошенничества и случайной покупки некачественного «железа», но гарантия не абсолютная. В любом случае, настоятельно рекомендуем вам перед покупкой предельно внимательно уточнять конфигурацию выбранного ПК во избежание неприятных недоразумений (тем, кто с компьютерами пока «на Вы», желательно заручиться поддержкой более осведомленного человека).
Конфигурация среднего ПК
Платформа AMD -процессор: - sempron64 3000 soket 939, видеокарта ATI Radeon x700 - , материнская плата - Foxconn soket 939, оперативная память - 512mб., жёсткий диск - 160мб., оптический привод - комбо-привод d+-rw/dvd-rom.
Платформа- Intel
процессор: - Celeron D 3000мгц., видеокарта - ATI Radeon x700, материнская плата - Intel soket 775, оперативная память - 512мб., жёсткий диск - 160мб., оптический привод - комбо-привод d+-rw/dvd-rom.
Компьютер такой конфигурации имеет среднее быстродействие и пригоден для большинства современных игр, но самые последние игры и те, которые выйдут через несколько месяцев будут "тормозить". Такой ПК оптимален для дома по соотношению цена/производительность
Конфигурация игрового компьютера
Платформа AMD
процессор: - Athlon X2 6800, видеокарта - Radeon x 1600 или Radeon x1800 или nVidia Geforce 7800sli (SLI - это видеокарты с возможностью установки двух на одну материнскую плату), материнская плата - Asus soket 939, оперативная память - 2гб., жёсткий диск - WD Raptor 10000rpm 70мб., оптический привод - DVD -+ rw/ram.
Платформа Intel
процессор: - Pentium D 3400гц., видеокарта - Radeon x 1600 или Radeon x1800 или nVidia Geforce 7800 SLI (SLI - это видеокарты с возможностью установки двух на одну материнскую плату), материнская плата - Asus soket 939, оперативная память - 2б., жёсткий диск - WD Raptor 10000rpm 70мб., оптический привод - DVD -+ rw/ram.
Практическая часть
1. Выписать из прайс-листа своего компьютера его конфигурацию.
2. Пояснить все параметры, используя приложения.
3. К какой конфигурации вы отнесете свой компьютер?
4. Ответьте на контрольные вопросы.
Контрольные вопросы
1) В чем положительные моменты самостоятельной сборки?
2) Как осуществить:
a) выбор корпуса
b) выбор блока питания
c) выбор процессора и материнской платы
d) выбор оперативной памяти
e) выбор видеокарты
f) выбор жесткого диска
g) сборку ПК
Литература
1. Максимов,Н.В. Архитектура ЭВМ и вычислительных систем [Текст]/ Н.В.Максимов, Т.Л. Партыка, И.И.Попов- ФОРУМ:ИНФРА., 2005-512с.
2. Таненбаум,Э. Архитектура компьютера.[Текст]/Э.Таненбаум.- СПб.: Питер, 2003.- 535с.
3. Гук,М.. Аппаратные средства IBM PC. Энциклопедия.[Текст]/М. Гук. -С Пб.: Питер, 2003.440 с.
4. Бройдо, В.Л, Вычислительные системы, сети и телекоммуникации [Текст]/В.Л. Бройдо. - СПб: Питер, 2003. 235 с.
5. Таненбаум,Э. Операционные системы. [Текст]/Э. Таненбаум.-СПб.: Питер, 2003, 625 с.
6. Брам,Г., Микропроцессор 80386 и его программирование [Текст]/ Г. Брам, Д. Брамм . - М.: Мир, 1990.123 с.
7. Водовозов,В.М. Практическое введение в информационные системы. [Текст] /В.М. Водовозов.- СПб.:, 1995.
– Конец работы –
Используемые теги: методические, указания, практическим, занятиям, дисциплине, архитектура, ЭВМ, вычислительных, систем0.105
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Методические указания к практическим занятиям по дисциплине Архитектура ЭВМ и вычислительных систем
Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов