Представление символьной информации.



Для представления текстовой (символьной) информации в компьютере используется алфа­вит мощностью 256 символов. Один символ из такого алфавита несет 8 бит информации, т.к. 28 = 256. Но 8 бит = 1 байту, сле­довательно, двоичный код каждого символа в компьютерном тексте занимает 1 байт памяти.

Таблица кодировки символов: таблица, в которой устанавливает­ся соответствие меж­ду символами и их порядковыми номерами в компьютерном алфавите.

Все символы компьютерного алфавита пронумерова­ны от 0 до 255. Каждому номеру со­ответствует 8-разрядный двоичный код от 00000000 до 11111111. Этот код есть поряд­ковый номер символа в двоичной системе счисления.

Для разных типов ЭВМ используются различные таблицы кодировки. С распростране­ни­ем персональных компьютеров типа IBM PC международным стандартом стала таблица коди­ровки под названием ASCII(American Standard Code for In­formation Interchange) — Американский стандартный код для информационного обмена.

Стандартными в этой таблице являются только первые 128 символов, т.е. символы с но­мерами от нуля (двоичный код 00000000) до 127 (01111111). Сюда входят буквы ла­тин­с­ко­го алфавита, цифры, знаки препинания, скобки и некоторые дру­гие символы. Остальные 128 ко­дов, начиная с 128 (двоичный код 10000000) и заканчивая 255 (11111111), используются для кодировки букв национальных алфавитов, символов псевдографики и научных символов (например, символы ≥, ≤ или ±). В русских национальных кодировках в этой части таблицы раз­мещаются символы русского алфавита.

Принцип последовательного кодирования алфавита: в ко­довой таблице ASCII ла­тин­ские буквы (прописные и строчные) располагаются в алфавитном порядке. Расположение цифр также упорядочено по возрастанию значений. Данное правило соблюдается и в других таб­лицах кодировки. Благодаря этому и в машинном представлении для символьной ин­фор­ма­ции со­храняется понятие «алфавитный порядок».

Представление числовой информации

Для представления чисел в памяти компьютера исполь­зуются два формата: формат с фик­сированной точкойи формат с плавающей точкой. В формате с фиксиро­ванной точкой пред­ставляются только целые числа, в формате с плавающей точкой — вещественные числа (це­лые и дробные).

Целые числа.

Множество целых чисел, представимых в памяти ЭВМ, ог­раничено. Диапазон зна­че­ний зависит от размера ячеек памяти, используемых для их хранения. В k-разрядной ячейке мо­жет храниться 2k различных значений целых чисел.

Пример. Получить внутреннее представление целого числа 1607 в 2-х байтовой ячей­ке.

Решение.N = 160710 = 110010001112. Внутреннее представление этого числа в ячей­ке будет следующим: 0000 0110 0100 0111. Шестнадцатеричная форма внутреннего представле­ния числа получается заменой 4-х двоичных цифр одной шестнадцатеричной цифрой: 0647.

Для записи внутреннего представления целого отрица­тельного числа (-N) необходимо: 1) по­лу­чить внутреннее представление положитель­ного числа N; 2) получить обратный код этого числа заменой 0 на 1 и 1 на 0; 3) к полученному числу прибавить 1.

Полученная форма представления целого отрицательного числа называется дополни­тель­ным кодом. Использование до­полнительного кода позволяет заменить операцию вычи­тания на операцию сложения уменьшаемого числа с дополнительным кодом вычитаемого.

Пример.Получить внутреннее представление целого отрицательного числа –1607.

Решение.1) Внутреннее представление положитель­ного числа: 0000 0110 0100 0111; 2) обратный код: 1111 1001 1011 1000; 3) результат прибавления 1: 1111 1001 1011 1001 — это внутреннее двоичное представление числа –1607. Шестнадцатеричная форма: F9B9.

Двоичные разряды в ячейке памяти нумеруются от 0 до k справа налево. Старший, k-й раз­ряд во внутреннем представлении любого положительного числа равен нулю, отрицатель­но­го числа — единице. Поэтому этот разряд называется знаковым разрядом.

Вещественные числа.

Формат с плавающей точкойиспользует представление вещественного числа R в ви­де произведения мантиссы т на основание системы счисления nв некоторой целой степени р, которую называют порядком: R =mnp

Представление числа в форме с плавающей точкой неодно­значно. Например, справедливы следующие равенства:

25.324 = 2.5324 * 101 = 0.0025324 * 104 = 2532.4 * 10-2 и т.п.

В ЭВМ используют нормализованное представление числа в форме с плавающей точкой. Мантисса в нормализованном представлении должна удовлетворять условию:

0.1n ≤ m < 1n.

Иначе говоря, мантисса меньше единицы и первая значащая цифра — не ноль.

В памяти компьютера мантисса представляется как целое число, содержащее только значащие цифры (0 целых и запятая не хранятся). Следовательно, внутреннее представление веще­ственного числа сводится к представлению пары целых чисел: мантиссы и порядка.

В разных типах ЭВМ применяются различные варианты представления чисел в форме с плавающей точкой. Для при­мера рассмотрим внутреннее представление вещественного числа в 4-х байтовой ячейке памяти.

В ячейке должна содержаться следующая информация о числе: знак числа, порядок и значащие цифры мантиссы.

± маш. порядок М А Н Т И  С С А

    1-й байт           2-й байт   3-й байт      4-й байт

В старшем бите 1-го байта хранится знак числа: 0 обозначает плюс, 1 —минус. Остав­ши­еся 7 бит первого байта содержат машинный порядок. В следующих трех байтах хранятся зна­­чащие цифры мантиссы (24 разряда).

В семи двоичных разрядах помещаются двоичные числа в диапазоне от 0000000 до 1111111. Значит, машинный порядок изменяется в диапазоне от 0 до 127 (в десятичной сис­те­ме счисления). Всего 128 значений. Порядок, очевидно, может быть как положительным, так и отрицательным. Разумно эти 128 значений разделить поровну между положительными и от­ри­ца­тель­ными значениями порядка: от -64 до 63.

Машинный порядок смещен относительно математичес­кого и имеет только поло­жи­тель­ные значения. Смещение вы­бирается так, чтобы минимальному математическому зна­чению порядка соответствовал нуль.

Связь между машинным порядком (Мр) и математическим (р) в рассматриваемом случае выражается формулой: Мр = р + 64.

Полученная формула записана в десятичной системе. В дво­ичной системе формула имеет вид: Мр2 = р2 + 100 00002.

Для записи внутреннего представления вещественного числа необходимо:

1) перевести модуль данного числа в двоичную систему счис­ления с 24 значащими цифрами; 2) нормализовать двоичное число;

3) найти машинный порядок в двоичной системе счисления;

4) учитывая знак числа, выписать его представление в 4-х байтовом машинном слове.

Пример.Записать внутреннее представление числа 250,1875 в форме с плаваю­щей точ­кой.

Решение.

1. Переведем его в двоичную систему счисления с 24 зна­чащими цифрами:

250,187510 = 11111010, 00110000000000002.

2. Запишем в форме нормализованного двоичного числа с плавающей точкой:

0,111110100011000000000000 *1021000.

Здесь мантисса, основание системы счисления (210 = 102) и порядок (810 = 10002) записа­ны в двоичной системе.

3. Вычислим машинный порядок в двоичной системе счис­ления:

Мр2 = 1000 + 100 0000 = 100 1000.

4. Запишем представление числа в 4-х байтовой ячейке па­мяти с учетом знака числа:

Шестнадцатеричная форма: 48FA3000.

8.3. Задание на лабораторную работу

Задания распределяются в зависимости от выданного преподавателем mn-кода. Если m — число нечетное, то ваш вариант 1, если четное — вариант 2.

 

Задание 1.


Вариант 1                                    

Вы работаете на компьютере с 2-х байто­вым машинным сло­вом. С каким шагом меняются адреса машинных слов?

Вариант 2

Вы работаете на компьютере с 4-х байто­вым машинным сло­вом. С каким шагом ме­ня­ются адреса машинных слов?


 

Задание 2.


Вариант 1

Компьютер имеет объем оперативной па­мя­ти 0,5 Кбайт. Адре­са машинных слов ме­ня­ются с шагом 2. Сколько машинных слов со­ставляют оперативную память компью­те­ра?

Вариант 2

Компьютер имеет объем оперативной па­мя­ти 1 Кбайт. Адреса машинных слов ме­ня­ются с шагом 2. Сколько машинных слов составляют оперативную память ко­м­пью­те­ра?



Задание 3.


Вариант 1

Какой объем имеет оперативная память ком­пьютера, если 3FF — шестнадцате­рич­ный адрес последнего байта оператив­ной памяти?

Вариант 2

Какой объем имеет оперативная память ком­пьютера, если FF — шестнадцатерич­ный адрес последнего байта оператив­ной памяти?

 


Задание 4.

Вариант 1

Какой объем имеет оперативная память компьютера, если FC — шестнадцатерич­ный адрес последнего 4-байтового ма­шин­но­го слова оперативной памяти?

Вариант 2

Какой объем имеет оперативная память ком­пьютера, если 1FE — шестнадцатерич­ный адрес последнего 2-байтового ма­шин­но­го слова оперативной памяти?


 

Задание 5.


Вариант 1

Компьютер имеет объем оперативной па­мя­ти равный ½ Кбайта и содержит 128 ма­шин­ных слов. Укажите адрес пос­леднего байта и адрес последнего машинного слова па­­мяти компьютера (в шестнадцатеричной форме).

 

 

Вариант 2

Компьютер имеет объем оперативной па­мя­ти равный 1 Кбайт и содержит 512 ма­шинных слов. Укажите адрес последнего байта и адрес последнего машинного слова памяти компьюте­ра (в шестнадцатеричной форме).


 

Задание 6.


Вариант 1

Двусторонняя дискета имеет объем 1200 Кбайт. Сколько до­рожек на одной стороне дис­кеты, если каждая дорожка содер­жит 15 секторов по 4096 бит?

Вариант 2

Какой объем имеет двусторонняя дискета, ес­ли каждая сторо­на ее разбита на 80 доро­жек по 20 секторов на дорожке? Объем каж­дого сектора составляет 0,5 Кбайт.


 

Задание 7.

Текст занимает mn Кбайт памяти компьютера. Сколько сим­волов содержит этот текст?

Задание 8.

Текст занимает n полных страниц. На каждой странице раз­мещается 30 строк по 70 символов в строке. Какой объем опе­ративной памяти (в байтах) займет этот текст?

Задание 9. 

Свободный объем оперативной памяти компьютера 640 Кбайт. Сколько страниц книги поместится в ней, если на стра­нице:


Вариант 1

1) 32 строки по 64 символа в строке.

Вариант 2

2) 64 строки по 64 символа в строке.


 

Задание 10.

Десятичный код (номер) буквы «е» в таблице кодировки сим­волов ASCII равен 101. Какая по­сле­довательность десятич­ных кодов будет соответствовать слову:


Вариант 1

           file

Вариант 2

           help


 

Задание 11.

Десятичный код (номер) буквы «о» в таблице кодировки сим­волов ASCII равен 111. Что за­шиф­ровано с помощью последо­вательности десятичных кодов:


Вариант 1

 115 112 111 114 116

Вариант 1

109 111 117 115 101


 

Задание 12.


Пользуясь таблицей кодировки символов ASCII, закодируйте с помощью шестнадцатеричных кодов следующий текст:


Вариант 1

Norton Commander

Вариант 2

Computer IBM PC


 

Задание 13.

Пользуясь таблицей кодировки символов ASCII, расшифруй­те текст, представленный в виде шес­т­над­цатеричных кодов символов:


Вариант 1

57 69 6Е 64 6F 77 73 2D 39 35

Вариант 2

 63 6F 6D 65 2D 4F 4Е 2D 6С 69 6Е 65


 

Задание 14.

Пользуясь таблицей кодировки символов ASCII, закодируйте с помощью двоичных кодов следующие слова:


Вариант 1

         EXCEL

Вариант 2

           Word


 

Задание 15.

По шестнадцатеричному коду восстановить двоичный код и пользуясь таблицей кодировки сим­­волов, расшифровать слово:


Вариант 1

42 61 73 69 63 

Вариант 2

50 61 73 63 61 


 

Задание 16.


Вариант 1

Компьютер работает только с целыми по­ло­жи­тельными чис­лами. Каков диапазон из­менения чисел, если для представле­ния чис­ла в памяти компьютера отводится 1 байт?

Вариант 2

Компьютер работает только с целыми по­ло­жи­­тельными чис­лами. Каков диапазон из­ме­не­ния чисел, если для представле­ния числа в памяти компьютера отводится 4 байта?

 


Задание 17.


Вариант 1

Каков диапазон изменения целых чисел (по­ложительных и отрицательных), если в па­мяти компьютера для представле­ния це­ло­го числа отводится 1 байт?

Вариант 2

Каков диапазон изменения целых чисел (по­ло­жительных и отрицательных), если в памя­ти компьютера для представле­ния целого чи­с­ла отводится 4 байта?



Задание 18.

a) Получить двоичную форму внутреннего представления целого числа в 2-х байтовой ячейке.

b) Получить шестнадцатеричную форму внутреннего пред­ставления целого числа в 2-х бай­то­вой ячейке.

c) По шестнадцатеричной форме внутреннего представления целого числа в 2-х байтовой ячейке восстановить само число.

 

варианты

номера заданий

m+n-2 a) b) c)
1 1450 -1450 F67D
2 1341 -1341 F7AA
3 1983 -1983 F6D7
4 1305 -1305 F700
5 1984 -1984 F7CB
6 1453 -1453 F967
7 1833 -1833 F83F
8 2331 -2331 F6E5
9 1985 -1985 F8D7
10 1689 -1689 FA53
11 2101 -2101 F840
12 2304 -2304 FAE7
13 2345 -2345 F841
14 2134 -2134 FAC3
15 2435 -2135 FA56

Задание 19.

a) Получить шестнадцатеричную форму внутреннего пред­ставления числа в формате с плавающей точкой в 4-х байтовой ячейке.

b) По шестнадцатеричной форме внутреннего представления вещественного числа в 4-х байтовой ячейке восстановить само число.

варианты

номера заданий

m+n-2 a) b)
1 -26.315 C5DB0000
2 -27.022 45D24000
3 13.333 C5ED0000
4 -77.611 47В7D000
5 87.022 C5D24000
6 -44.333 488В6000
7 51.315 С7В7А000
8 -63.611 45DB0000
9 60.509 С88В6000
10 -91.509 45ED0000
11 48.611 С6870000
12 -12.022 46870000
13 33.333 С9А6С000
14 -29.611 49А6С000
15 38.315 48Е04000

 

Задание 20.

Для изображения цифр в стандарте почтового индекса (как пишут на конвертах) получить век­тор­ное и растровое представление для цифры m и цифры n.

 

Задание 21.

Определить объем памяти для хранения цифрового аудиофай­ла, время звучания которого сос­тав­ля­ет n минут при час­тоте дискретизации 44.1 кГц и разрешении 16 бит.

 

Задание 22.

 В распоряжении пользователя имеется память объемом m+n Мб. Необходимо записать цифровой ау­дио­файл с длительностью звучания n минут. Какой должна быть частота дискретиза­ции и раз­ряд­ность?

 

Задание 23.


Вариант 1

Объем свободной памяти на диске — 5,25 Мб, раз­рядность звуковой платы — 16. Какова максимальная дли­тельность звучания цифро­вого аудио­фай­ла, может быть записана с частотой ди­скретизации 22.05 кГц?

Вариант 2

Одна минута записи цифрового аудио­файла занимает на диске 1.3 Мб, раз­ряд­ность звуковой платы — 8. С какой часто­той дискретизации записан звук?


 

Задание 24.


Вариант 1

Две минуты записи цифрового аудиофайла за­ни­мают на диске 5,1 Мб. Частота дискре­ти­за­ции — 22050 Гц. Какова разряд­ность аудио­адап­тера?

Вариант 2

Объем свободной памяти на диске — 0.01 Гб, ра­зрядность зву­ковой платы — 16. Ка­ко­ва дли­тель­ность звучания цифрового аудио­фай­ла, мо­жет быть записана с частотой ди­скретизации 44100 Гц?

8.4. Требования к содержанию отчета

1. Цель лабораторной работы.

2. Задание на лабораторную работу. Mn- код.

3. Решение заданий своего варианта.

4. Выводы по полученным результатам.

8.5. Контрольные вопросы

1. Представление символьной информации в памяти ЭВМ.

2. Представление целых чисел в памяти ЭВМ.

3. Представление вещественных чисел в памяти ЭВМ.

4. Для чего используется дополнительный кож целого числа?

5. Что такое битовая глубина?


Лабораторная работа №9
"АРХИТЕКТУРА ЭВМ"

9.1. Цель работы

Изучение классической (фон-Неймановской) архитектуры ЭВМ и машинных команд.

8.2. Методические указания [2]

Архитектура ЭВМ — описание устройства и функцио­нирования ЭВМ без подробностей тех­нической реали­зации. В понятие архитектуры входит: описание состава основных фун­к­цио­наль­ных узлов и их информацион­ного взаимодействия; описание способов представления инфор­мации в компьютере; описание структуры процессора и языка машинных команд.

Машина фон Неймана— архитектура ЭВМ, предложенная американским ученым Джоном фон Нейманом в 1946 году. Ос­новные принципы включают:

1. Принцип программного управления. Из него следует, что программа состоит из на­бо­ра ко­манд, которые выполняются процессором автоматически друг за другом в определенной по­сле­до­ва­тель­ности. Выборка программы из памяти осуществляется с помощью счетчика ко­манд. Этот ре­гистр процессора последовательно увеличивает хранимый в нем адрес очередной ко­манды на длину ко­манды. А так как команды программы расположены в памяти друг за дру­гом, то тем самым организуется выборка цепочки команд из последовательно расположенных ячеек памяти. Если же нуж­но после выполнения команды перейти не к следующей, а к какой-то другой, используются ко­ман­ды условного или безусловного переходов, которые заносят в счетчик команд номер ячейки памяти, содержащей следующую команду. Выборка команд из памяти прекращается после достижения и вы­полнения команды “стоп”. Таким образом, про­цес­сор исполняет программу автоматически, без вмешательства человека

2. Принцип однородности памяти. Программы и данные хранятся в одной и той же па­мя­ти. По­этому компьютер не различает, что храниться в данной ячейке памяти – число, текст или ко­ман­да. Над командами можно выполнять такие же действия, как и над данными.

Иногда этот принцип называют «принцип хранимой команды». И это отсутствие прин­ци­пи­аль­ной разницы между программой и данными дало возможность ЭВМ самой фор­ми­ро­вать для се­бя программу в соответствии с результатом вычислений.

На этом принципе основаны методы трансляции — перевода текста программы с языка про­грам­мирования высокого уровня на язык конкретной машины.

3. Принцип адресности. Структурно основная память состоит из пронумерованных яче­ек; про­цессору в произвольный момент времени доступна любая ячейка. Это позволяет обра­щать­ся к про­извольной ячейке (адресу) без просмотра предыдущих.

Согласно принципам фон Неймана система должна работать с двоичными числами, быть эле­к­­трон­ной (а не меха­ни­чес­кой) и выполнять операции последовательно, одну за другой. Прин­ци­пы фон Неймана ста­ли общепринятыми только потому, что широко применялись все время. Они бы­ли положены в основу как больших ЭВМ первых поколений, так и более поздних мини-, микро-­ЭВМ и пер­со­нальных компьютеров (ПК).

Формат машинной команды

Машинная программа— последовательность машинных команд.

Принцип хранимой программы(принцип фон Неймана): во время исполнения программа хра­нится в оператив­ной памяти вместе с данными. Каждая команда программы занимает ячейку па­мя­ти и имеет свой адрес (адрес ячейки).

Формат команды.Для всякого процессора машинная ко­манда имеет стандартный формат и стро­­го фиксированную длину. Команда состоит из кода операции и адресной части. Код операции оп­­ределяет действие, которое должен выполнить процессор; адресная часть содержит адреса вели­чин, над кото­рыми должна быть произведена эта операция:

Длина команды.Длина кода операции зависит от числа операций, входящих в систему ко­манд компьютера. Так код операции длиной в 4 бита позволяет хранить коды до 16 (24) различных ко­манд (с двоичными кодами от 0000 до 1111). Можно сформулировать простое правило определе­ния опти­мальной длины кода операции:

,

где К — количество команд в системе команд машинного языка, k — длина поля кода операции (в би­тах). Фактически во многих случаях длина поля кода операции берется с из­бытком, что, на­при­мер, легко позволяет расширять систему команд.

Пример 1.В системе команд компьютера содержится 50 команд. Какова оптимальная длина кода операции?

Решение. Поскольку 25 = 32 < 50 < 64 = 26, то длина кода операции должна быть не меньше 6 бит.

Большинство арифметических и логических операций имеют два операнда и поэтому трех­адрес­ная структура машинной команды наиболее естественна. В двухадрес­ной команде один из адре­сов используется и для аргу­мента и для результата (после выполнения команды), что несуществен­но влияет на методику программирования на языке машинных команд (ЯМК) такого ком­пью­те­ра. В одноадресной машине возникает необходимость использования специального элемента па­мя­ти, называемого сумматором или ак­кумулятором.

В трех- (двух-) адресной машине длины полей всех адресов одинаковы, поэтому общую дли­ну команды (в битах) можно определить по формуле:

d = k + n а,

где k— длина поля кода операций, n— количество адресов в адресной части (n = 1, 2, 3), а— дли­на поля адресной части (в битах). Очевидно, в этом случае размеры адресуемого про­странства (А — количество адресуемых ячеек памяти) опреде­ляются формулой:

А = 2а.

Язык машинных команд

В соответствии с принципами Дж. фон Неймана выде­ляют четыре основных типа машинных ко­манд:

— арифметические и логические;

— управления;

— внутренней пересылки данных;

— ввода/вывода.

Для уяснения специфики программирования на ЯМК вос­пользуемся двумя «учебными ком­пью­терами»: Счетная Маши­на «Малютка»и Учебный Компьютер «Нейман», описанных в не­ко­торых школьных учебниках по информатике. Для простоты ограничимся только целочисленной ариф­метикой и минимально необходимым подмно­жеством команд из систем машинных команд этих исполнителей.

СМ «Малютка»:процессор — одноадресный, длина поля кода операций 4 бита, длина поля адресной части 1 байт, длина адресуемой ячейки памяти равна длине команды, система счис­ления — двоично-шестнадцатеричная. Данная учебная машина 12-разрядная, а значит, каждая его коман­да может быть записана 12 / 4 = 3 шестнадцатеричными цифрами. В большинстве этих команд пер­вая цифра обозначает код операции, а две следующие - адрес ячейки, над которой производится дей­ствие.

Система команд СМ «Малютка» (шестнадцатеричное представление).

КОП Мнемо­код Вид команды Операция Пояснение
0 LDA 0аa Пересылка из ОП в сумматор (аa)=>$
1 STA 1аa Пересылка из сумматора в ОП ($)=>аa
А ADD Ааa Сложение сумматора с содержимым ОП ($)+(аa)=>$
В MULT Ваa Умножение сумматора на содержимое ОП ($)*(аa)=>$
4 JMP 4аa Безусловный переход к ОП aа => СчК
D JNP Daa Передача управления на ОП, если содержимое сумматора меньше или равно нулю (≤0)  
С IPRT С00 Вывод содержимого сумматора в формате целых чисел  
3 NEG 300 Смена знака сумматора -($)=>$
6 1DIV 600 Получение обратной величины в сумматоре (1/$)=>$
F HLT F00 Останов машины  

Здесь запись аa обозначает адрес ячейки (две шестнадцатеричных цифры), а $ — «адрес» сум­матора. Запись (аa) и ($) обозначает содержимое ячейки с ад­ресом аa и содержимое сумматора, соответственно. ОП означает содержимое области памяти с адресом aa. СчК — счетчик команд.

В качестве базовых арифметических команд в "Малютке" выбраны сложение и умножение. Оставшиеся операции вычитания и деления (для вещественных чисел) реализуются с помощью специальных дополнительных инструкций изменения знака сумматора (код 300) и получения в сумматоре обратной величины (код 600).

Отрицательные числа в "Малютке" представляются в прямом коде. Например,

510="0 000101", -510="1 000101".

УК «Нейман»: процессор — трехадресный, длина поля кода операций 1 байт, адресуем каж­дый байт памяти, длина ячейки памяти равна длине машинной команды, представление чисел в па­мя­ти в форме с фиксированной точкой, система счисления — дво­ич­но-шестнадцатеричная. Наз­на­че­ние — арифметические расчеты с целыми числами. Размер машинного слова —4 байта.

Оперативная память УК "Нейман" имеет размер 256 байт и делится на ячейки (машинные слова) размером 4 байта.

Адреса байтов лежат в интервале от 0 до 255. В шестнадцатеричной системе это соответству­ет диапазону от 0 до FF.

Группы из 4 байтов образуют ячейки. Адрес ячейки равен адресу младшего байта, входящего в нее (байта с меньшим номером).

Схематически структуру памяти УК "НЕЙМАН" можно представить так:

Адреса ячеек

Байты

00 00 01 02 03
04 04 05 06 07
08 08 09 0A 0B
0C 0C 0D 0E 0F
10 10 11 12 13
14 14 15 16 17
..        
F8 F8 F9 FA FB
FC FC FD FE FF

Адреса ячеек меняются с шагом 4. Первая ячейка имеет адрес 00, последняя - FC. Адреса представляются двузначными шестнадцатеричными числами, что соответствует восьмизначным двоичным числам. Следовательно, при хранении адреса в памяти он занимает 1 байт (8 бит).

Всего в памяти 64 ячейки (256/4). В ячейке может храниться либо число, либо команда про­грам­мы.

Размер памяти (256 байт) и длина адресного кода (8 бит) однозначно связаны между собой че­рез понятие "адресное пространство". Адресное пространство - это совокупность байтов памяти, к которым можно обратиться с использованием машинного адреса. Если адресный код содержит n байт, то размер адресного пространства равен 2n байт. В УК "НЕЙМАН" n=8, поэтому размер ад­рес­ного пространства равен 28=256 байт.

УК "НЕЙМАН" работает только с целыми числами в формате с фиксированной точкой. Числа вводятся и выводятся в шестнадцатеричном виде. Диа­пазон целых чисел, представимых в памяти УК "НЕЙМАН", следующий:

-231 ≤ N ≤ 231 - 1 или
-2147483648 ≤ N ≤ 2147483647.

Система команд УК «Нейман» (шестнадцатеричное пред­ставление).

КОП Мнемо­код Вид команды Операция Пояснение
00 MOV 00 a1 — аЗ Пересылка (а1) => аЗ
01 ADD 01 a1 a2 a3 Сложение (а1) + (а2) => аЗ
02 SUB 02 a1 a2 a3 Вычитание (а1) - (а2) => аЗ
03 MUL 03 a1 a2 a3 Умножение (а1) х (а2) => аЗ
GO 0B — — аЗ Безусловный переход аЗ => СчК
IFGO 0А — —  аЗ Условный переход на ячейку аЗ, если результат предыдущей команды больше 0  
77 STOP 77 — — — Останов машины  
FF NOP FF — — — Пустая команда При выполнении пропускается

Здесь знак "—" означает, что соответствующие операнды в выполнении команды не учас­тву­ют и их содержимое значения не имеют.

Управление учебными компьютерами осуществляется по­средством программы в автома­ти­чес­­ком режиме (принцип про­граммного управления). Самая первая команда программы рас­по­ла­га­ет­ся в ячей­ке с нулевым адресом. Команды выполняются в естественном порядке до тех пор, пока не встре­­тится команда остановки или невыполнимая команда. В регистре счетчика команд (СчК) при этом содержится адрес следующей команды.


Дата добавления: 2018-04-15; просмотров: 2322; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!