汇编语言上机考试三星题——负数变成绝对值,并以十进制方式输出。

  1. 在BUFFER中定义了的十个带符号字,将其中的负数变成绝对值,并以十进制方式输出。
DATAS SEGMENT
    ;此处输入数据段代码  
    data dw 0,1,0aH,4,-5555,-7777,-181,-911,-4396,11
    buf db 5 dup(?)
    
DATAS ENDS

STACKS SEGMENT
    ;此处输入堆栈段代码
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
    ;此处输入代码段代码
    mov cx,10
    mov si,0
    edg:
    	mov di,0
    	mov ax,data[si]
    	cmp ax,0
    	jg  lng
    	neg ax
    	mov data[si],ax
    	lng:
    		mov dx,0
    		mov bx,10
    		div bx
    		add dl,30h
    		mov buf[di],dl
    		inc di 
    		cmp ax,0
    		jnz lng
    	fpx:
    		dec di
    		mov dl,buf[di]	
    		mov ah,02h
    		int 21h
    		cmp di,0
    		jnz fpx
    		
    		mov dl,2ch
    		mov ah,02h
    		int 21h
    		add si,2
    		loop edg

    	
    	
    	
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值