Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 25.05.2008, 21:01   #1
sergei64_89
Форумчанин
 
Регистрация: 20.04.2008
Сообщений: 139
По умолчанию вывод числа

в регистре bx будет хрониться число(допустим 20)!как его вывести на экран?
sergei64_89 вне форума
Старый 25.05.2008, 21:11   #2
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Я Вам уже советовал пользоваться поиском. По сотому разу писать одно и то же писать вряд ли кто-то станет.
B_N вне форума
Старый 25.05.2008, 21:35   #3
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию для особо одарённых

программа (в формате DOS COM), выводящей на экран десятичное значение регистра ax:
Код:
; tasm /m showdec.asm
; tlink /t /x showdec.obj

.MODEL Tiny
.CODE
ORG	100h

Number		=	12345

Start:

		std                    ; Устанавливаем ОБРАТНЫЙ порядок записи
		lea	di,StringEnd-1 ; ES:DI = последний символ строки String

		mov	ax,Number      ; Заносим в AX число для перевода

; Начинаем перевод числа AX в строку
		mov	cx,10          ; Задаемся делителем CX = 10
Repeat:
		xor	dx,dx          ; Обнуляем DX (для деления)
		div	cx             ; Делим DX:AX на CX (10),
                                       ; Получаем в AX частное, в DX остаток
		xchg	ax,dx          ; Меняем их местами (нас интересует остаток)
		add	al,'0'         ; Получаем в AL символ десятичной цифры
		stosb                  ; И записываем ее в строку
		xchg	ax,dx          ; Восстанавливаем AX (частное)
		or	ax,ax          ; Сравниваем AX с 0
		jne	Repeat         ; Если не ноль, то повторяем

; Теперь осталось вывести строку на экран
		mov	ah,9
		lea	dx,[di+1]      ; Заносим в DX адрес начала строки
		int	21h            ; Выводим ее на экран

		int	20h            ; Выходим из программы

String		db	5 dup (?),'$'  ; Резервируем 5 байт для строки
StringEnd	=	$-1            ; Указывает на символ '$'

END		Start
rpy3uH вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод float числа в поток cout IgorKr Общие вопросы C/C++ 7 30.05.2008 01:21
Вывод данных в зависимости от числа sklins Помощь студентам 4 11.03.2008 21:56
Вывод числа lenivec Общие вопросы Delphi 3 10.02.2008 22:45
Вывод числа месяца (Pacal) [Smarik] Помощь студентам 13 18.01.2008 03:44