mov ah 2 int 21h我知道这个是显示字符的功能但是为什么我总显示很奇怪的结果

显示各种乱码

中断21h,ah=02h —— 显示字符,这里的字符是ASCII 码;
ah=02h, dl=8bit ASCII 码
在当前光标位置显示或更新显示字符(覆盖在该位置原来的字符),当显示 08h 时,光标移动到屏幕左边,但并不修改屏幕上原有的字符。
另外,在汇编中,向dl中送显示字符,可以用ASCII码,也可以直接输入字符,例如:
mov dl, 30h
mov dl, '0'
这两句的结果是一样的;
mov dl, 41h
mov dl, 'A'
这两句的结果也是一样的;
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-05-22
你在 DL 中,放置了什么?

mov ah 2 int 21h我知道这个是显示字符的功能但是为什么我总显示很奇...
ah=02h, dl=8bit ASCII 码 在当前光标位置显示或更新显示字符(覆盖在该位置原来的字符),当显示 08h 时,光标移动到屏幕左边,但并不修改屏幕上原有的字符。另外,在汇编中,向dl中送显示字符,可以用ASCII码,也可以直接输入字符,例如:mov dl, 30h mov dl, '0'这两句的结果是一样...

汇编中MOV AH,02H int 21h输出的DL吗?
MOV AH,02H 是给AH赋值02H,是显示字符的作用,MOV DL, 08H 是表示显示的字符的ASCII码是08H,INT 21H是是DOS的中断调用,整个语句的意思很简单,就是在屏幕上显示08H。汇编博大精通,好好学啊。

汇编中的mov ah,02h int 21h指令
一般DOS中断,单字节输入的都是al,输出的都是dl 字符串输出dx为字符串受地址 in out 指令输入输出都是al

汇编语言中执行 MOV AH,02H INT 21H 后AL的值为什么会改变?急,在线等...
中断后会调用对应中断号的服务程序,在中断服务程序中会使用ax而没有对ax进行现场保护,返回会改变,通常也把函数的返回值放到ax中。所以调用前要对ax进行保护,可以执行前压入堆栈PUSH AX,执行后再弹出POP AX。

请一下为什么我的这段汇编程序貌似只能比较两个十以内的数呢,十以上...
MOV AH, 2 INT 21H 是显示DL中的ASCII形式的字符。而DL中,仅仅能存放一个字符的ASCII码。要想显示45(或67),必须十位、个位分别显示。看看我的百度空间,这样的显示程序。有很多的。

...MOV AH,0AH INT 21H MOV AH,9 INT 21H MOV AH,4CH INT 21H 我...
MOV AH,0AH INT 21H 确实是输入一个字符串的指令,可是需要注意的是,使用这个指令的时候需要设置一些东西,否则的话,使用的时候会出错。在这儿解释一下INT 21H里的0Ah功能:输入一个字符串到DS:DX,第一个字节是buffer的大小,第二个字节是实际需要读的字符串的字符个数。而且这个指令不需要在字符...

微机原理,接收键盘输入的一个字符,如果是小字母,屏幕显示“right”.否则...
9 INT 21H @2: MOV AH,4CH INT 21H ;===; al--为要判断的字符,ah--为返回结果; ah=1 为是; ah=0 为否 ISDIGT PROC NEAR PUSH ES

int 21h 调用显示输入字符的问题
.DATA OUTPUTS DB 0DH, 0AH,'This is a asm prog $'NUM DB 3, 0, 4 DUP(?).STACK 64 .CODE MAIN: MOV AX, @DATA MOV DS, AX PINPUT: MOV DX, OFFSET NUM MOV AH, 0AH INT 21H ;输入2个字符 MOV DX, OFFSET OUTPUTS MOV AH, 09H INT 21H ;显示OUTPUTS中的内容 MOV AH, ...

汇编语言程序输出的一直是乱码,求高手找错
MOV BYTE PTR [BX], '$' ;在字符串尾插 MOV AH, 09H ;字符串显示功能.INT 21H ;显示键入的字符串.EXIT_MAIN:mov ah, 4ch int 21h ;返回DOS MAIN ENDP ;主程序的末尾.;--- SORT PROC ;排序子程序.XOR CX, CX MOV CL, ACTLEN ;取得输入的字符数...

汇编中MOV AH=02H MOV DL 08H INT 21H什么意思
MOV AH,02H 是给AH赋值02H,是显示字符的作用,MOV DL, 08H 是表示显示的字符的ASCII码是08H,INT 21H是是DOS的中断调用,整个语句的意思很简单,就是在屏幕上显示08H。汇编博大精通,好好学啊。

相似回答