汇编实验:统计正数、负数、零的个数

该段汇编代码用于统计BUF数组中正数、负数和0的个数,结果分别存储在NUM变量的三个位置。程序通过CX循环计数,利用CMP、JMP指令判断并更新计数器。最后,通过INT21H调用显示结果(未启用)。

统计数组BUF中正数、负数、0的个数顺序存放在变量NUM中

DATAS SEGMENT
    BUF DB 5,6,1,0,-8,6,0
    N=$-BUF
    NUM DB 3 DUP(?)
DATAS ENDS
 
CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS
START:
	MOV  AX,DATAS
	MOV  DS,AX
	
	MOV  CX,N
	MOV  SI,OFFSET BUF 
	   	    
CYCLE:	
	CMP  BYTE PTR [SI],0
	JL   A1
	JZ   A2
	INC  NUM
	JMP  A3
	
A1:		
	INC  NUM+1
	JMP  A3
	
A2:		
	INC  NUM+2
	
A3:		
	INC  SI
	LOOP CYCLE	
	
	;取消注释如下代码可以运行后看到分别看到正数,负数,0的个数
	;MOV AH,2
	;MOV DL,NUM
	;OR DL,30H
	;INT 21H
	
	;MOV AH,2
	;MOV DL,NUM+1
	;OR DL,30H
	;INT 21H
	
	;MOV AH,2
	;MOV DL,NUM+2
	;OR DL,30H
	;INT 21H
	
	MOV  AH,4CH
	INT  21H
CODES ENDS
    END START
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值