| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Asm: Общие вопросы > Программа для ввода чисел из клавы |
| Автор: ROKI 13.12.2008, 20:43 | ||
Привет всем. Вот код программы котороя осуществляет ввод десятичных числе из клавы:
все выглядит красиво, но когда я комиплируюу данную программу, то копмилятору не нравится вот эта строка ."add a, aх", и он выдает ошибку: "Operand types do not match". В чем можэт быть проблема. И еще хочу попросить Вас, добавить к этой программи по возможности детальные комментарии,или объяснить принцип ее работы, потому что я ее не совсем понимаю. Зарание спасибо ! |
| Автор: AndNot 14.12.2008, 05:57 | ||||||||
Несовместимость типов: a - занимает 8-мь бит, а AX - 16 бит. Замени строку:
|
| Автор: ROKI 14.12.2008, 16:56 | ||
AndNot, спасибо за ответ, ошыбки буду исправлять. Еще одна просьба, ты не мог бы прокоментировать етот участок кода:
|
| Автор: AndNot 15.12.2008, 01:23 | ||
Окей. Сначала исправления:
Т.е. преобразование строки в число выглядит следующим образом. Допустим ввели строку: "145". в цикле начинаем разбор: 1 цикл: ax = 5 * 1 (bx * ax) a = a + ax ; a = 5 ax = AX * 10 ; т.е. ax = 10 2 цикл: ax = 4 * 10 (ax) ; (bx * ax) a = a+ax ; a = 45 ax = AX * 10 ; т.е. ax = 100 3 цикл: нет смысла считать, получим 145 (bl*100+45) |
| Автор: ROKI 15.12.2008, 21:01 |
| AndNot, спасибо тебе большое за коменты |