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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.11.2009, 14:26   #1
andresan
Пользователь
 
Регистрация: 08.11.2009
Сообщений: 33
По умолчанию Вывод числа (assembler)

Дана программа:
Код:
masm
model small
stack 256
.data
a dw 8765
b dw 4567
sum db 4 dup (0)
.code
main:
	mov ax,@data
	mov ds,ax
start:
	xor ax,ax
	mov ax,a
	add ax,b
exit:
	mov ax,4c00h
	int 21h
end main
помогите число из регистра ax предаствить в десятичном виде
andresan вне форума Ответить с цитированием
Старый 08.11.2009, 19:45   #2
Legat
Пользователь
 
Регистрация: 05.10.2007
Сообщений: 34
По умолчанию

Вроде должно быть что-то вроде этого.
Код:
        
        mov eax,12345d ; Число для преобрасования
        mov ecx,9d
        .while ecx<>-1
          xor edx,edx
          xor ebx,ebx
          mov bl,10d
          div bx
          mov bl, [digits+edx]
          mov [buffer+ecx], bl
          dec ecx
        .endw
---
        buffer  db 10 dup('-'),0
        digits db '0123456789';
Для Win32/64 есть пример в masm:

Код:
    fMtStrinG db "%lu",0
    ....
    invoke wsprintf,lpBuffer,ADDR fMtStrinG,dwValue
Круто, что еще кто-то пишет программки под дос
Legat вне форума Ответить с цитированием
Старый 13.11.2009, 13:36   #3
Наталюсечка
 
Регистрация: 13.11.2009
Сообщений: 3
По умолчанию

помогите пожалуйста в написании программы!!! Дана фраза. В ней между словами может быть и по одному и по два пробела. Преобразовать ее так, чтобы между словами осталось по одному пробелу
Наталюсечка вне форума Ответить с цитированием
Старый 13.11.2009, 17:31   #4
Legat
Пользователь
 
Регистрация: 05.10.2007
Сообщений: 34
По умолчанию

Цитата:
Сообщение от Наталюсечка Посмотреть сообщение
помогите пожалуйста в написании программы!!! Дана фраза. В ней между словами может быть и по одному и по два пробела. Преобразовать ее так, чтобы между словами осталось по одному пробелу
На всякий случай спрошу, а программу написать нужно обязательно на ассемблере?
Legat вне форума Ответить с цитированием
Старый 13.11.2009, 19:42   #5
Наталюсечка
 
Регистрация: 13.11.2009
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Legat Посмотреть сообщение
На всякий случай спрошу, а программу написать нужно обязательно на ассемблере?
да, обязательно на ассемблере
Наталюсечка вне форума Ответить с цитированием
Старый 13.11.2009, 22:05   #6
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

Имеет смысл описывать логику или можно не напрягаться и вам нужен только код?
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума Ответить с цитированием
Старый 16.11.2009, 12:38   #7
Наталюсечка
 
Регистрация: 13.11.2009
Сообщений: 3
По умолчанию

можно не углубляться. мне бы только код
Наталюсечка вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Assembler. Подпрограмма на вывод значений. Alasmus Помощь студентам 4 29.10.2009 22:19
Вывод алфавита [assembler (TASM)] Nitrino Помощь студентам 2 14.10.2009 10:45
Вывод даты и времени (assembler) olen` Помощь студентам 0 05.06.2009 22:45