|
Главная -> Появление первого микропроцессора 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 [91] 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 FA8B CI FASC C9 FABD CD79FA FA90 OD FA91 CETVFA FA94 OA FA95 C9 FA96 0E20 FA98 C369FA POP Ь RET KOHC: ; ПОЛПРОГРАЖА УСТАНОВКИ НОВОЙ СТРОКИ НА КОНСОЛИ. ;КХХН№Н№НК№КХ»Н№КНН»НХККХКХККНХ»»Х»ХККККККХК«№ХХ«.«Х«%КХК CALL CALL ЕЫЕС1 OEM ЕЫЕС1 OAH ЕЫЕОЯ BK ЕЫЕОЛ ПС ЕЫЕПг ;кк»х«к«и«хмхк»кк«м«х«««мкк««х»х»«кххкхххккк««*«хх««х«*х i ПОЙПРОГРАЖА ЕЫЕОПА ПРОБЕЛА НА КОНСОЛЬ. ;»lK*«K«KXXX»KXX«K«XX«X«*K«KXXX*K»KKK«-)(KX«K«XKXXXXXXXX»XX MUI с JMP ЕЫЕС FA9E 7Е FA9C Е7 FA9D СЗ FA9E 4F FA9F CD69FA FAA2 23 FAA3 C39EFA TBsCTi ;XX««»KXK»XXKXX»X»K««««»SXXX»XXXXK«XXXXKXX«X««XXXX««KXXX 5 ПОДПРОГРАММА ВИВОДА НА КОИСО.* ЦЕПОЧКИ СИМВОЛОВ. ; ПАРАМЕТР: (H,L) - АДРЕС НАЧАЛА ЦЕПОЧКИ СИМВОЛОВ. ;КХХ№К№Х««»«ХКХКХХХ«Х«ХКХ«ХККК%К»К№№К№К»КК«ККХХХККККК«КК ORA RZ CALL А.М А С>А ЕЫВС Н ТЕКСТ ЕСЛИ ОЧЕРЕДНОИ КОЛ РАВЕН О ВЫВОД СИМВОЛА Программы ВЫВС и ВЫВС1 реализуют вывод на консоль одного символа. Программа ВЫВС после вывода символа на консоль драйвером ИРПР проверяет состояние флага печати. Если он установлен, вывод символа дублируется на печатающее устройство через драйвер ИРПС. Программа ВЫВС1 выводит на консоль символ, код которого расположен непосредственно за командой вызова данной программы, а возврат осуществляется по адресу, следующему за символом. Такой механизм передачи параметра позволяет вызывающей программе организовать вызов в четырех байтах вместо пяти при использовании программы ВЫВС. Ввод символа с консоли выполняется программой КВВЫ. Эта программа осуществляет также вывод введенного символа - «эхо» - на устройство отображения консоли (после нажатия клавищи). Программы КОНС и ВЫВП предназначены для вывода на консоль наиболее часто встречающихся символов. Первая выполняет переход на новую строку устройства отображения посредством выдачи ко- дов ВК и ПС, вторая - кода пробела. Программа ТЕКСТ выводит последовательность символов, коды которых расположены в памяти по заданному адресу. Последний байт этой последовательности должен содержать признак конца текста - код ООН. ОД оперирует только с шестадцатеричными числами. Необходимые операции по преобразованию шестнадцатеричных цифр из символьного представления в двоичное и обратно выполняют программы 2-й группы: ПРК16: ; ПОИПРОГРАММА ПРЕОБРАЗОВАНИЯ ШЕСТНАДЦАТЕРИЧНОЙ ЦИФРЫ J ИЗ СИМЕО.ЯЬНОГО ПРЕДСТАВЛЕНИЯ Б ДВОИЧНОЕ. ! ВХОДНЫЕ ПАРАМЕТРЫ; (А) - КОД СИМВОЛА Б КОИ-7. ; ВЫХОДНЫЕ ПАРАМЕТРЫ: (А) - ЗНАЧЕНИЕ ЦИФРЫ ( Б МЛАДШЕМ ; ПОЛУБАЙТЕ)! (CY)=1» ЕСЛИ ВВЕДЕННЫЙ СИМВОЛ НЕ ЯВЛЯЕТСЯ ! ШЕСТНАДЦАТЕРИЧНОЙ ЦИФРОЙ. ;кххкхкккккккххкхкххххкххкхкхкхххкхххххкхххххккххххххххх
FAE8 E60F FABA С690 FABC 27 FAED СЕ40 FAEF 27 FACO 4F FAC1 С9 ПР16К: ;кххкхккхкхххккхххххххкхкхххххххххкккххххкххххххкхкхххкх ! ПОДПРОГРАММА ПРЕОБРАЗОВАНИЯ ЦИФРЫ ИЗ ДВОИЧНОГО ПРЕД,-; СТАЕЛЕНИЯ в СИМВОЛЬНОЕ. ; ВХОДНОЙ ПАРАМЕТР! (А) - ЧИСЛО (В МЛАДШЕМ ПОЛУБАЙТЕ). ; ВЫХОДНОЙ ПАРАМЕТР: <С) - КОД ШЕСТНАДЦАТЕРИЧНОЙ ЦИФРЫ В ; КОДЕ КОИ-7. ;ххкхккххххккххх«кхххккхкхкхкккк«хккккхкхххххххххххххххх AMI OFH ADI 90Н DAA ? УСТАНОВКА (CY)=1 ДЛЯ ЧИСЕЛ ) 9 ACI 40Н MOV CrA Программа ПРК16 преобразует цифру в системе КОИ-7 в двоичное число (шестандцатеричную цифру). Шестнадцатеричным цифрам О, 1, 9, А, F в системе КОИ-7 соответствуют коды ЗОН, 31Н, .... 39Н. 41Н, 46Н. Следовательно, для получения двоичных кодов цифр 0.....9 достаточно вычесть из кода символа константу ЗОН, а для кодов шестнадцатеричных цифр А,..., F - константу 37Н. Программа, кроме преобразования, производит проверку принадлежности значения входного параметра к множеству шестнадцатеричных цифр. В начале программы проверяется принадлежность кода символа к диапазону 30Н...46Н путем вычитания и сложения с соответствующими константами. При этом в аккумуляторе получается значение, соответствующее двоичному числу со смещением: ЮН - для шестнадцатеричных цифр А, F и 17Н -для цифр О, 9. Для селекции этих двух типов цифр к содержимому аккумулятора добавляется 6. При этом для цифр 1-го типа возникает переполнение, и флаг S устанавливается в нуль. Для цифр 2-го типа выполняется дополнительная проверка превышения числа 39Н, после чего производится дополнительная коррекция для получения двоичного числа. Обратное преобразование выполняет программа ПР16К.. Для получения кода символа преобразуемой шестнадцатеричной цифры к ее значению добавляется константа ЗОН, но по правилам десятичной арифметики. При этом для шестнадцатеричных цифр А, F необходимо к полученной сумме добавить еще единицу. В программе указанное преобразование выполняется по-иному: к двоичным числам добавляется константа 90Н, что позволяет для данных цифр установить флаг CY в единицу, а затем с помощью команды ACI - константа 40Н. Программы 3-й группы предназначены для ввода-вывода двух- и четырехразрядных шестнадцатеричных чисел: ПРЕВ: ; ПОЯПРОГРАМНА ВВОДА СИМВОЛА С КОНСОЛИ С СЕЛЕКЦИЕЙ ТЕР-5 НИНАТОРА. ; ВЫХОДНЫЕ ПАРАНЕТРЫ: (А)~ВВЕЯЕННЫЙ СИНВОЛ; (Z)---lr (CY)=Oj i ЕСЛИ ВВЕДЕН ПРОБЕЛ ИЛИ (Z)=l,(СУ)=1.ЕСЛИ ВВЕДЕН ВК; ? (Z)=O»(CY)=0 В ПРОТИВНОЙ СЛУЧАЕ.
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 [91] 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 0.009 |
|