当前位置: 代码迷 >> 汇编语言 >> 一个简单程序的有关问题
  详细解决方案

一个简单程序的有关问题

热度:1911   发布时间:2013-02-26 00:00:00.0
一个简单程序的问题
程序是这样:输入10个数,存储在数组里,然后输出。
我写的程序:
INCLUDE   Irvine32.inc
.data
IntegerCount=10
prompt1   BYTE   "Enter   a   signed   integer:   ",0
str1   BYTE   "Output   integer:   ",0
array   DWORD   IntegerCount   DUP(?)

.code
main   PROC
call   InputInt
call   OutputInt
call   Waitmsg
exit
main   ENDP

InputInt   PROC

mov   edx,OFFSET   prompt1
mov   ecx,IntegerCount
mov   esi,OFFSET   array
L1:call   WriteString
      call   ReadInt  
      mov   [esi],eax
      add   esi,4
      loop   L1
ret
InputInt   ENDP

OutputInt   PROC

mov   ecx,IntegerCount
mov   edx,OFFSET   str1
mov   esi,OFFSET   array
call   WriteString
L2:mov   eax,[esi]
      call   WriteInt
      add   esi,4
      loop   L2
ret
OutputInt   ENDP
END   main


问题是最后输出的数中间都带有+号,如2+6+8...
请问怎样才能去掉这些加号?

------解决方案--------------------------------------------------------
写一个过滤器子过程,或者直接改写输出例程。
------解决方案--------------------------------------------------------
WriteInt 输出的是有符号数,或者你可以用WriteDec
  相关解决方案