|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 兰陵月 于 2016-12-15 12:41 编辑
- ;程序名:TT322.ASM
- ;功 能:设一个32位有符号数存放在DX:AX中,请写一个求其补码的程序片段
- ASSUME CS:CSEG,DS:DSEG
- ;数据段
- DSEG SEGMENT
- DIWEI DW 321EH
- GAOWEI DW 0CD20H
- MESSAGE1 DB "THE NUMBER'S COMPLEMENT IS CD20321EH","$"
- MESSAGE2 DB "THE NUMBER'S COMPLEMENT IS NEW","$"
- DSEG ENDS
- ;代码段
- CSEG SEGMENT
- START: MOV AX,DSEG
- MOV DS,AX
- MOV DX,GAOWEI
- MOV AX,DIWEI
- TEST DH,10000000B
- JZ OK1
- JNZ OK2
- OK2: XOR DX,7FFFH
- XOR AX,0FFFFH
- MOV GAOWEI,DX
- ADD AX,1
- MOV DIWEI,AX
- MOV AX,GAOWEI
- ADC AX,0
- MOV GAOWEI,AX
- MOV DX,OFFSET MESSAGE2
- MOV AH,9
- INT 21H
- JMP OK
- OK1: MOV DX,OFFSET MESSAGE1
- MOV AH,9
- INT 21H
- JMP OK
- OK: MOV AX,4C00H
- INT 21H
- CSEG ENDS
- END START
复制代码
请问这个答案是否有错误,或者可以做更多优化。和大家交流~谢谢~
我已经经过调试,结果没有错误~ |
|