iMPRE7
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Добрый день, Столкнулся с моим ночным кошмаром ассемблером и у меня такое задание: - Считать с клавиатуры восьмеричное число
- Проверить являются ли все введенные символы допустимыми в программе
- Перевести число в 10 систему
- Вывести на экран
Помогите пож кто чем может. Имеется вот это: Код: .model small .stack 100h .code Nachalo: MOV ax, 173o CALL Schiot MOV ah, 4Ch MOV al, 0 INT 21h PROC Schiot PUSH ax PUSH cx PUSH dx MOV cx, 10 PUSH "$$" Delenie: MOV dx, 0 DIV cx PUSH dx CMP ax, 0 JA Delenie MOV ah, 2 Pechat: POP dx CMP dx, "$$" JE Konec ADD dl, '0' INT 21h JMP Pechat Konec: POP dx POP cx POP ax RET Schiot ENDP END nachalo | Работает безотказно, НО Нужна считка Пробовал в начале и такое: Код: .model small razmerBuffera EQU 127 .stack 100h .data bufRazmer db razmerBuffera ;Сколько максимально символов можно считать schital db ? ;Количество считанных символов buffer db razmerBuffera dup (?) ;Считанные символы .code Nachalo: MOV ax, @data MOV ds, ax MOV ah, 9 MOV ax , offset buffer ;хотя вроде для этого используется dx, но я не знаю INT 21h ;как изменить процедуру чтоб работала с dx Call Schiot ; **** Процедура из прошлого кода **** . . . . . . . . . . . . | З.Ы. Я полный лошара в асм. | Всего записей: 3 | Зарегистр. 12-10-2010 | Отправлено: 16:33 12-10-2010 | Исправлено: iMPRE7, 17:51 12-10-2010 |
|