观海听涛BBS's Archiver

命若琴弦 发表于 2008-5-8 22:03

帮忙调一下程序急在线等---高手进了!汇编题

帮忙调一下程序急在线等---高手进了!汇编题
定义一个串,测出其中正数个数为12,怎么输出正数个数????
data segment
data ends
code segment
assume cs:code,ds:data
start:mov ax,data
      mov ds,ax
      mov ax,12
      mov bx,10
      div bx
      mov dl,al
      add dl,30h
      mov ah,2h
      int 21h
      mov dl,ah
      add dl,30h
      mov ah,2h
      int 21h
      mov ah,4ch
      int 21h
code ends
end start

怎么把12显示出来?

alittle 发表于 2008-5-9 14:09

具体指令不太记得了。告诉你方法  12->al;12是十进制应该是0ch
xor ah,ah;ah清零
DAA ;十进制加法调整 应该是这条指令 al:02h,ah:01h,变成bcd码
add al,30h;                   al:32h:2的ascii码
add ah,30h;                   ah:31h  1的ascii码
mov dl ,ah;
mov ah,02h;
int 21h
mov dl,al
mov ah,02
int 21h

命若琴弦 发表于 2008-5-9 16:39

回复 2# alittle 的帖子

谢谢

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.