鱼C论坛

 找回密码
 立即注册
查看: 3642|回复: 1

[汇编作业] 汇编语言_实验9(改版I LOVE YOU的输出)

[复制链接]
发表于 2021-2-8 19:40:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 635924705 于 2021-2-8 20:15 编辑

【学习交流,共同进步】
assume cs:codesg, ds:datasg

datasg segment
    ;定义几个空格,一行80个word,7*80+35
    dw 595 dup (0)    
        
        ;定义第一行,占个10个word
        db 'I',00000010B,' ',00000010B,'L',00000010B,'O',00000010B,'V',00000010B,'E',00000010B,' ',00000010B,'Y',00000010B,'O',00000010B,'U',00000010B
        
        ;定义几个空格,35+3*80+35
    dw 310 dup (0)    
        
        ;定义第二行,占个10个word
        db 'I',00100100B,' ',00100100B,'L',00100100B,'O',00100100B,'V',00100100B,'E',00100100B,' ',00100100B,'Y',00100100B,'O',00100100B,'U',00100100B
        
        ;定义几个空格,35+3*80+35 
        dw 310 dup (0)   
        
        ;定义第三行,占个10个word
        db 'I',01110001B,' ',01110001B,'L',01110001B,'O',01110001B,'V',01110001B,'E',01110001B,' ',01110001B,'Y',01110001B,'O',01110001B,'U',01110001B
        
        ;定义几个空格
        dw 755 dup (0)
        
datasg ends

codesg segment
start: mov ax,datasg
       mov ds,ax        ;数据段的地址给ds
           mov ax,0b800h
           mov es,ax        ;显示段的地址给es
           
           mov di,0         ;di表示第几个字符的传输,di+2就是下一个字符
           mov cx,2000      ;自行定义传送前多少个word的数据,即前多少个字符
        s: mov ax,[di]
           mov es:[di],ax
        
           add di,2
           loop s
                      
           mov ax,4c00h
       int 21h      
codesg ends
end start
感觉这个实验要求少就简单,就是全面copy数据,然后算一下在哪显示文字好看就行了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-2-8 20:13:25 | 显示全部楼层
看完小甲鱼老师的讲解之后,我发现,我这个方法是不是太偷懒了。
直接数据拿来就用,都没用循环。
就适用性可能不高吧。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-29 04:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表