asm--换行符-回车符

本文通过MASM for Windows的实验环境,探讨了回车符(0x0d)和换行符(0x0a)在文本显示中的差异。在DOS环境下,使用0x0a进行换行,0x0d使光标返回到当前行首。通过示例代码展示了不同组合如何影响输出效果。

Topic : 换行符 和 回车符 有何区别 ?

 

简介 :  /n ,==0x0a ,换行符

            /r  ,==0x0d ,回车符

 

编译环境 :  MASM for Windows 集成实验环境 共享版 2009.4

系统环境 : MS Win xp home edition 2002 sp2

机器介绍 : 联想系列 Intel(R) Pentium(R) 4

 

test code 01 :


DATAS SEGMENT    

          ;此处输入数据段代码      

          mes1    db    'mes1','$'    

          mes2    db    'mes2','$'    

          mes3    db    'mes3','$'

DATAS ENDS 

STACKS SEGMENT    

          ;此处输入堆栈段代码    

          db 256 dup(0)

STACKS ENDS 

CODES SEGMENT    

          ASSUME CS:CODES,DS:DATAS,SS:STACKS

START:    

           MOV AX,DATAS    

           MOV DS,AX    

           ;此处输入代码段代码    

           mov dx,offset mes1    

           mov ah,09h    

           int 21h    

           mov dl,0ah    ;ASCII_TABLE:0ah==nl    

           mov ah,02h    

           int 21h

 

           mov dx,offset mes2    

           mov ah,09h    

           int 21h    

           mov dl,0ah    

           mov ah,02h    

           int 21h

 

           mov dx,offset mes3    

           mov ah,09h    

           int 21h         

 

          MOV AH,4CH    

          INT 21H

CODES ENDS    

         END START

 

          贴结果出来:

                          图1

 

test code 03 :

  [ 较之code test  01,这里只列出区别之处 ]

    ........

                ;mes2

                mov dx,offset mes2    

                mov ah,09h    

                int 21h    

                mov dl,0ah     ;光标跳至下行,列不变.

                mov ah,02h    

                int 21h    

                mov dl,0dh    

                mov ah,02h    

                int 21h    
   ..........

 

       贴结果出来:

 

我想以上两个测试代码可以说明一定的问题,这里不再赘语.

 

[ the end ]

特别感谢 : masm for windows 软件提供者

 

2010-7-7[添补]

 

test code 03:

................

                ;mes2

                mov dx,offset mes2

                mov ah,09h

                int 21h

                mov dl,0dh         ;0dh==光标回到本行行首

                mov ah,02h

                int 21h

................

贴图出来:

 

test code 04:

 

data segment

         mes1 db '123456789','$'

         mes2 db 'ABCDEFGHK','$'

         mes3 db 'abcdefghk','$'

data ends

............

         ;mes2

         mov dl,0dh

         mov ah,02h

         int 21h

............

贴图出来:

 

test code 05:

 

data segment

      ............

      mes3 db 'abcdefghk123456789','$'

..................

贴图出来:

 

test code 06:

 

..................

           mes3 db 'abcdefghk1','$'

.................

贴图出来 :

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值