Как распечатать номер с INT 10h - PullRequest
0 голосов
/ 20 марта 2011

Я проверил википедию о различных видах функций INT 10h.Но я не смог найти один, чтобы напечатать число, я имею в виду не строку, а целое число.Например, мне нужно набрать 1 + 2 + 3 + 4 и распечатать вывод.Как я могу сделать?

Ответы [ 3 ]

0 голосов
/ 20 марта 2011

Вы не можете вывести целое число больше 9 напрямую, используя int 10h.Вместо этого вам нужно написать макрос / функцию для преобразования одной цифры в символ путем получения числа и добавления его к «0» (30h).Затем вам нужно написать дополнительную функцию, чтобы получить каждую из цифр из целого числа, которое вы хотите отобразить.Например, если целое число может быть максимум 5 цифрами (8-битное число), то разделите его на 10000, и это первая цифра, или ничего, если 0, затем 1000 для второй цифры и т. Д. Поместите их в строку, а затемс этим вы можете позвонить в 10h.

0 голосов
/ 20 марта 2011

Используя int 10h, вам придется делать эту цифру за цифрой.Для смещения для цифр проверьте таблицу ASCII : чтобы напечатать 0, загрузите 0 + 48 в AH.

0 голосов
/ 20 марта 2011

Преобразуйте число в строку, затем наберите int 10h с этим.

...