здравствуйте всем, помогите пожалуйста с такой вещью как ввод числа с клавиатуры подключенной к PORTA (цифры вводятся от 1-10), т.е. идет последовательный ввод цифр, затем эти цифры должны быть преобразованы в число. Пример: 1,2,3,4 - это мы ввели цифры в некоторые буферы, a:=1, b:=2, c:=3, d:=4. a:=a*1000,b:=b*100,
c:=c*10, summa:=a+b+c+d. Да и то ввод цифр не является фиксированным т.е. нужно определить сколько было введено цифр чтобы произвести действие преобразования. Вот пример который покажет что я имел ввиду, только он какой то бред несет.
1,5,0,0 в итоге 1500 (DEC) 05DC(HEX)
пример:
var:.byte 1
var1:.byte 1
var2:.byte 1
var3:.byte 1 ;выделяем для каждого числа байт, это потом будет
выведено на ЖКИ индикатор к примеру число 1500
ldi temp,1 ; это цифра получена с клавиатуры
sts var,temp ;записываю в память
ldi temp,5 ; это цифра получена с клавиатуры
sts var1,temp
.set pl1 = var*1000 ; произвожу вычисления
.set pl2 = var1*100
.set pl = pl1+pl2 ; складываю
ldi r17,low(pl);младший
ldi r18,high(pl);старший
(это число мне нужно для дальнейших вычислений и потом как то
надо опять его преобразовать в отдельные цифры)
только после всего этого какая то ерунда получается.
за ранее благодарен за помощь.
все эти var-ы применяются как буферы получения с клавиатуры
некоторой цифры (1-10) (10 - является как ноль).