汇编--在屏幕上显示彩色字体



                                                汇编--在屏幕上显示彩色字体

 

  学习汇编学了已经半个学期了,总感觉自己学的不扎实,语言这种东西,我感觉要想学的好必须多实践。在实践中才能更扎实的掌握知识,不然学了一本书,到头来什么事都干不了。课本上有给的材料题,我也懒的一个字一个字的把实验材料写上来。我就贴图片吧。请看



 

 我的代码实现如下:

 

DATAS SEGMENT
    ;此处输入数据段代码  
    DB 'Welcome to masm!'
    DB 02H,24H,71H
DATAS ENDS

STACKS SEGMENT
    ;此处输入堆栈段代码
    DW 8 DUP(0);栈空间
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
    ;此处输入代码段代码
    MOV AX,STACKS
    MOV SS,AX
    MOV SP,10H;设置栈顶
    
    MOV BX,0 ;控制颜色
    MOV AX,0B872H ;显存位置
    
    MOV CX,3   ;外循环
    
S3:
   push cx ;多重循环处理方法
   push ax ;保存显存地址
  
   
   mov es,ax ;将显存地址赋给附加段
   mov si,0
   mov di,0
   mov cx,10h ;因为字符有16个所以这里赋值为10h
   
S2:
  MOV al,ds:[di]
  mov es:[si],al
  ;上面这两步将数据段中的字符一一给复制到显存的偶数位
  inc di
  add si,2
  loop S2
   
  MOV si,1
 
  MOV AL,10H[BX]
  INC BX
  mov cx,10h
   
S1:
  MOV ES:[SI],AL
  ;将颜色复制到显存的奇数位
  ADD SI,2
  loop S1
  
   POP AX
   ADD AX,0AH
   POP CX
   LOOP S3
    
   MOV AH,4CH
   INT 21H
CODES ENDS
    END START

 运行结果为:

 

 

  • 大小: 100.7 KB
  • 大小: 76.6 KB
  • 大小: 35.7 KB
  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值