这是用汇编语言为8086微处理器编写的代码。这段代码查找数字是正数还是负数。我理解代码,但不能理解该代码的第4和第5行。
;FIND A NUMBER THAT WAS POSITIVE OR NEGETIVE
DATA SEGMENT
X DW 28H
MSG1 DB 10,13, 'NUMBER IS POSITIVE $'
MSG2 DB 10,13, 'NUMBER IS NEGETIVE $'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START:
MOV AX, DATA
MOV DS, AX
MOV AX, X
ROL AL, 01H
JC NEGA
LEA DX, MSG1
JMP LAST
NEGA:
LEA DX, MSG2
LAST:
MOV AH, 09H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
为什么他们在第4和第5行的MSG1 DB后面使用10,13?
1条答案
按热度按时间goucqfw61#
由于内部服务器错误的注解表明
10
是换行符的ASCII控制代码,而13
是回车符的代码。换行控制代码将光标移动到下一行,而回车代码将光标移动到行首。这两个控制代码一起将光标移动到下一行的开头。这两个控制代码一起也形成了标准的MS-DOS行结束序列,除了在其他顺序。换句话说,序列
13, 10
是标准的MS-DOS行结束。虽然在示例程序中使用不正确的顺序可能不会产生任何实际差异,但您应该在自己的程序中使用正确的顺序。这将确保其他可能读取您的程序输出的程序不会感到困惑。