отчет asm 5 (Готовая лаба №5)

2018-01-09СтудИзба

Описание файла

Файл "отчет asm 5" внутри архива находится в папке "Готовая лаба №5". Документ из архива "Готовая лаба №5", который расположен в категории "". Всё это находится в предмете "системное программирование" из 4 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "системное программирование" в общих файлах.

Онлайн просмотр документа "отчет asm 5"

Текст из документа "отчет asm 5"

Защищено:

Гапанюк Ю. Е.

"__"_____________2014 г.

Демонстрация:

Гапанюк Ю. Е.

"__"_____________2014 г.

Отчет по лабораторной работе № 5 по курсу

Системное программирование

С доп Требованиями

Ввод строки и вывод в машинном формате

6

(количество листов)

Вариант № 9

ИСПОЛНИТЕЛЬ:

студент группы ИУ5-42

_____________________

(подпись)

Зайков С.А.

"__"_____________2014 г.

Москва, МГТУ - 2014

_____________________________________________________________________________________________





СОДЕРЖАНИЕ



1. Цель и задание работы 3

2. Блок-схема алгоритма программы 3

3. Листинг кода 4

4. Результаты работы программы 4



1 Цель и задание работы

Разработать и отладить программу на языке Ассемблер для ввода строки символов с клавиатуры (последовательности символов) и вывода их в шестнадцатеричном представлении (через пробел). В данной программе необходимо предусмотреть запоминание строки символов в байтовом массиве.

2 Блок-схема алгоритма программы

3. Листинг кода

Turbo Assembler Version 3.1 04/04/14 08:30:52 Page 1

LAB5.ASM

1 0000 MYCODE SEGMENT 'CODE'

2 ASSUME CS:MYCODE,DS:MYCODE

3 0000 30 31 32 33 34 35 36+ hex_str DB '0123456789ABCDEF'

4 37 38 39 41 42 43 44+

5 45 46

6 0010 5A 61 79 6B 6F 76 20+ FIO DB "Zaykov S.A. IU5-42 Var_9$"

7 53 2E 41 2E 20 49 55+

8 35 2D 34 32 20 56 61+

9 72 5F 39 24

10 0029 54 6F 20 65 78 69 74+ Vyhod DB "To exit enter '*'$"

11 20 65 6E 74 65 72 20+

12 27 2A 27 24

13 003B 0100*(00) str db 256 dup(0)

*Warning* LAB5.ASM(6) Reserved word used as symbol: STR

14 013B START:

15 013B 0E PUSH CS

16 013C 1F POP DS

17 013D 1E PUSH DS

18 013E 07 POP ES

19 013F E8 0097 CALL ClrScr

20 0142 BA 0010r MOV DX,offset FIO

21 0145 B4 09 MOV AH,09

22 0147 CD 21 INT 21h

23 0149 E8 0099 CALL CLRF

24 014C Cycle1:

25 014C BF 0000 MOV DI,0

26 014F Cycle2:

27 014F @enterchar:

28 014F B4 08 MOV AH,08

29 0151 CD 21 INT 21h

30 0153 3C 21 cmp AL,21h

31 0155 72 F8 jb @enterchar

32 0157 88 85 003Br MOV str[di],AL

33 015B 3C 24 CMP AL, '$'

34 015D 75 03 JNE ENIF

35 015F EB 06 90 JMP ENDEF

36 0162 ENIF:

37 0162 8A D0 MOV DL,AL

38 0164 E8 006D CALL PutCh

39 0167 ENDEF:

40 0167 47 INC DI

41 0168 3C 24 CMP AL,'$'

42 016A 75 E3 JNE Cycle2

43 016C B2 3D MOV DL, '='

44 016E E8 0063 CALL PutCh

45 0171 BF 0000 MOV DI, 0

46 0174 Cycle3:

47 0174 8A 95 003Br MOV DL,str[di]

48 0178 52 PUSH DX

49 0179 80 FA 24 CMP DL, '$'

50 017C 75 03 JNE Hexing

51 017E EB 0A 90 JMP G1

52 0181 Hexing:

53 0181 E8 0032 CALL Hex

54 0184 47 INC DI

55 0185 B2 20 MOV DL, ' '

56 0187 E8 004A CALL PutCh

Turbo Assembler Version 3.1 04/04/14 08:30:52 Page 2

LAB5.ASM

57 018A G1:

58 018A 5A POP DX

59 018B 80 FA 24 CMP DL, '$'

60 018E 75 E4 JNE Cycle3

61 0190 E8 0052 CALL Clrf

62 0193 BA 0029r MOV DX, offset Vyhod

63 0196 B4 09 MOV AH,09

64 0198 CD 21 INT 21h

65 019A B4 08 MOV AH,08h

66 019C CD 21 INT 21h

67 019E 50 PUSH AX

68 019F E8 0043 CALL Clrf

69 01A2 58 POP AX

70 01A3 3C 2A CMP AL, '*'

71 01A5 75 A5 JNE Cycle1

72 01A7 E8 003B CALL Clrf

73 01AA E8 0033 CALL GetCh

74 01AD E8 0029 CALL ClrScr

75 01B0 B0 00 MOV AL,0

76 01B2 B4 4C MOV AH,4ch

77 01B4 CD 21 int 21h

78 01B6 Hex PROC

79 01B6 8B C2 MOV AX,DX

80 01B8 50 PUSH AX

81 01B9 D0 E8 shr AL,1

82 01BB D0 E8 shr AL,1

83 01BD D0 E8 shr AL,1

84 01BF D0 E8 shr AL,1

85 01C1 BB 0000r MOV BX, offset hex_str

86 01C4 D7 XLAT

87 01C5 8A D0 MOV DL,AL

88 01C7 E8 000A CALL PutCh

89 01CA 58 POP AX

90 01CB 24 0F and AL,00001111b

91 01CD D7 XLAT

92 01CE 8A D0 MOV DL,AL

93 01D0 E8 0001 CALL PutCh

94 01D3 C3 ret

95 01D4 Hex ENDP

96 01D4 PutCh Proc

97 01D4 B4 02 MOV AH,02h

98 01D6 CD 21 INT 21h

99 01D8 C3 ret

100 01D9 PutCh ENDP

101 01D9 ClrScr PROC

102 01D9 B4 00 MOV AH,00

103 01DB B0 03 MOV AL,03

104 01DD CD 10 INT 10h

105 01DF C3 ret

106 01E0 ClrScr ENDP

107 01E0 GetCh PROC

108 01E0 B4 01 MOV AH,01H

109 01E2 CD 21 INT 021H

110 01E4 C3 RET

111 01E5 GetCh ENDP

112 01E5 Clrf PROC

113 01E5 B4 02 MOV AH,02

Turbo Assembler Version 3.1 04/04/14 08:30:52 Page 3

LAB5.ASM

114 01E7 B2 0D MOV DL,13

115 01E9 CD 21 INT 21H

116 01EB B4 02 MOV AH,02

117 01ED B2 0A MOV DL,10

118 01EF CD 21 INT 21H

119 01F1 C3 RET

120 01F2 Clrf ENDP

121 01F2 MYCODE ENDS

122 END START

Turbo Assembler Version 3.1 04/04/14 08:30:52 Page 4

Symbol Table

Symbol Name Type Value

??DATE Text "04/04/14"

??FILENAME Text "LAB5 "

??TIME Text "08:30:52"

??VERSION Number 030A

@CPU Text 0101H

@CURSEG Text MYCODE

@ENTERCHAR Near MYCODE:014F

@FILENAME Text LAB5

@WORDSIZE Text 2

CLRF Near MYCODE:01E5

CLRSCR Near MYCODE:01D9

CYCLE1 Near MYCODE:014C

CYCLE2 Near MYCODE:014F

CYCLE3 Near MYCODE:0174

ENDEF Near MYCODE:0167

ENIF Near MYCODE:0162

FIO Byte MYCODE:0010

G1 Near MYCODE:018A

GETCH Near MYCODE:01E0

HEX Near MYCODE:01B6

HEXING Near MYCODE:0181

HEX_STR Byte MYCODE:0000

PUTCH Near MYCODE:01D4

START Near MYCODE:013B

STR Byte MYCODE:003B

VYHOD Byte MYCODE:0029

Groups & Segments Bit Size Align Combine Class

MYCODE 16 01F2 Para none CODE

Turbo Assembler Version 3.1 04/04/14 08:30:52 Page 5

Error Summary

*Warning* LAB5.ASM(6) Reserved word used as symbol: STR

4. Результаты работы программы

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5173
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее