2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 assembler 8086. Посимвольное задание числа в переменную
Сообщение28.04.2014, 17:07 
Не могу сообразить как ввести число с клавиатуры в переменную. Есть функция ввода символа с клавиатуры в регистр al. В этот регистр записывается ascii код, от которого я избавляюсь и получаю число в 16 ричном виде, проблема в том, что я не могу понять, как дальше вводить числа, чтоб получилось, хотябы двузначное. У меня были мысли сдвигать на 4 разряда вправо, т.к всё в памяти, в независимости от системы счисления, хранится в двоичной системе счисления, значит в моём случае 1 разряд в 16 ричной системе эквивалентен 4 разрядам в двоичной. Исходя из этих заключений я решил вводить поочереди каждый символ, а потом сдвигать 4 раза ввлево, после чего опять прибавлять, но 4 сдвига сделать не получается вообще, выдаёт ошибку копилятор, но 1 раз сдвиг сделать смогу. Сдвиг совершал так
Код:
shl b,4

думал дело в том, что обе переменные в памяти и попробовал так
Код:
mov ax,4
shl b,ax

но ничего не изменилось...

 
 
 
 Re: assembler 8086. Посимвольное задание числа в переменную
Сообщение28.04.2014, 17:42 
В процессоре 8086 сдвигать можно либо на 1 бит, либо количество бит должно быть в регистре cl. В более новых процессорах Intel константное число бит может быть и больше единицы, но вот переменное по прежнему должно быть в регистре cl.

 
 
 
 Re: assembler 8086. Посимвольное задание числа в переменную
Сообщение28.04.2014, 18:26 
venco в сообщении #856340 писал(а):
В процессоре 8086 сдвигать можно либо на 1 бит, либо количество бит должно быть в регистре cl. В более новых процессорах Intel константное число бит может быть и больше единицы, но вот переменное по прежнему должно быть в регистре cl.


огромное спс) теперь все работает)

 
 
 [ Сообщений: 3 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group