汇编中MOV AH,02H int 21h输出的DL吗? 5
DATASSEGMENTFIVEDB5DATASENDSSTACKSEGMENTSTACKDB128DUP(0)STACKENDSCODESSEGMENTASSUMECS...
DATAS SEGMENT
FIVE DB 5
DATAS ENDS
STACK SEGMENT STACK
DB 128 DUP(0)
STACK ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START: MOV AX,DATAS
MOV DS,AX
MOV AL,FIVE
ADD AL,3
ADD AL,30H
MOV DL,AL
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
运行后输出的是08. DL明显是38H啊.
MOV AH,02H int 21h输出的到底是什么啊? 展开
FIVE DB 5
DATAS ENDS
STACK SEGMENT STACK
DB 128 DUP(0)
STACK ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START: MOV AX,DATAS
MOV DS,AX
MOV AL,FIVE
ADD AL,3
ADD AL,30H
MOV DL,AL
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
运行后输出的是08. DL明显是38H啊.
MOV AH,02H int 21h输出的到底是什么啊? 展开
5个回答
展开全部
是输出DL 没错
之所以屏幕上显示 8,是因为 '8' 这个字的Ascii码 就是38H
输出屏幕时会被转换成 Ascii
所以你如果要屏幕上输出 '38' 要分两次输出
第一次 DL 用33H,会输出 '3'
第二次 DL 用38H, 会输出 '8'
之所以屏幕上显示 8,是因为 '8' 这个字的Ascii码 就是38H
输出屏幕时会被转换成 Ascii
所以你如果要屏幕上输出 '38' 要分两次输出
第一次 DL 用33H,会输出 '3'
第二次 DL 用38H, 会输出 '8'
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
AL寄存器是一个8位积存器,它最大能存储的数字是F,38H明显超过了该寄存器的范围,产生了溢出,
追问
8位 应该是可以存FFH以内吧.不是说4位二进制=1位十六进制吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DATA SEGMENT
BUF DB 32
DB ?
DB 32 DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET BUF
MOV AH,0AH
INT 21H
MOV BX,OFFSET BUF
MOV AL,[BX]
INC BX
CMP AL,[BX]
JAE NEXT
MOV AL,[BX]
NEXT: MOV DL,AL
MOV AH,02H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
追问
WHAT?
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
38H=108,然后你知道了吧
追问
38H=56. 38H=3*16+8=48+8=56
如果你说的108不是十进制那是什么啊???/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询