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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.03.2009, 23:41   #1
frankfish
 
Регистрация: 02.03.2009
Сообщений: 3
По умолчанию Форматированный вывод чисел

прога всё правильно делает, но выводит результаты в формате 4 знаков,
тоисть ввожу например 5, потом 8, вывод 0028, а нада 28
вопрос: как избавиться от этих лишних нулей?
знаю что нада шо-то изменить в этой процедуре
Код:
BintoHex Proc
	mov cx,4
m:
	mov si,ax
	and si,1111b	
	mov dl,StrHex[si]
	dec bx
	mov [bx],dl
	Shr ax,4
	dec cx
	jnz m
	ret 
BintoHex EndP
не заю что?
помогите плиз
вот целый код:
.MODEL small
.STACK 100h
.DATA
str1 DB 53 DUP(?)
str2 DB 53 DUP(?)
strRez DB 53 DUP(?)

Strhex DB '0123456789ABCDEF'

Num1 DW 0
Num2 DW 0

CodeNewLine DB 13,10,'$'
.CODE
	mov ax,@data 
	mov ds,ax
	
	mov dx, offset str1
	call ReadStr
	call NewLine
	call AsciiToBin
	mov Num1,ax
	
	mov dx,offset str2
 	 call ReadStr
	call NewLine
	call AsciiToBin 
	mov Num2,ax
	
	mul Num1 

	mov bx,offset StrRez +50
	mov byte ptr [bx],'$'
	 call BintoHex
	mov dx,bx
         call WriteStr
 	 call NewLine
	


ReadStr Proc
	mov bx,dx
	mov al,51
	mov [bx],al
	mov ah,0Ah
	int 21h
	mov cl,[bx]+1
	ret
ReadStr EndP

AsciiToBin Proc;	вхід 	вх-адреса початку рядка символів
                         ; 		cl-кількість символів 
	         ; 	вихід 	ах -одержане число 
	mov ax, 0
	mov si, 10
	mov dx, 0
	mov ch, 0
MulLoop:
	mul	si
	mov	dl, [bx]+2
	sub	dl, 30h
	add	ax, dx
	inc	bx
	dec	cl
	jnz	MulLoop	
	ret
AsciiToBin ENDP

BintoHex Proc
	mov cx,4
m:
	mov si,ax
	and si,1111b	
	mov dl,StrHex[si]
	dec bx
	mov [bx],dl
	Shr ax,4
	dec cx
	jnz m
	ret 
BintoHex EndP

WriteStr Proc
	mov ah,9
	int 21h
	ret
	WriteStr Endp

NewLine Proc
	mov dx, Offset CodeNewLine 
	mov ah,9
	int 21h
	ret
	Newline Endp

	mov ah,4ch
	int 21h
	END

Последний раз редактировалось rpy3uH; 03.03.2009 в 08:38.
frankfish вне форума Ответить с цитированием
Старый 04.03.2009, 17:59   #2
frankfish
 
Регистрация: 02.03.2009
Сообщений: 3
По умолчанию

уже не нада
frankfish вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Форматированный вывод в Delphi7 Sanguineus Общие вопросы Delphi 5 24.05.2011 10:13
Форматированный вывод информации в поле ввода (TEdit или подобные) vet_coder Компоненты Delphi 3 13.12.2007 10:55
Вывод целых и десятичных чисел Maycal Общие вопросы C/C++ 2 24.10.2007 12:34