王爽《汇编语言》实验9——根据材料编程
2016-08-07 16:48
232 查看
**编程,在屏幕中间分别显示绿色、红底绿色、白底蓝色的
字符串‘Welcome to masm!’。**
字符串‘Welcome to masm!’。**
ASSUME CS:CODE,DS:DATA,SS:STACK ;------------------------------------------------------------ ;------------------------------------------------------------ DATA SEGMENT DB 'WELCOME TO MASM!' COLOR DB 00000010B,00100100B,01110001B DATA ENDS ;------------------------------------------------------------ ;------------------------------------------------------------ STACK SEGMENT STACK ENDS ;------------------------------------------------------------ ;------------------------------------------------------------ CODE SEGMENT START: MOV AX,DATA ;初始化DS MOV DS,AX MOV AX,0B800H ;初始化(ES)=显示缓冲区段地址 MOV ES,AX MOV SI,0720H ;0720H=11行的偏移地址 MOV CX,3 ;(CX)=外层循环次数(显示行数) MOV DI,OFFSET COLOR ;(DI)=所需颜色的偏移地址 PRINT: PUSH CX MOV CX,16 ;(CX)=内层循环次数(字符个数) MOV BX,0 ;(BX)=字符的位置 S: MOV AL,[BX] ;(AL)=字符 PUSH AX MOV AX,BX ;计算显示缓冲区中的偏移地址 MOV DL,2 MUL DL MOV BP,AX ;(BP)=显示缓冲区中的偏移地址 POP AX ;恢复(AL)=字符 MOV ES:[BP+SI],AL ;送入字符到缓冲区 MOV AX,[DI] ;获取颜色 MOV ES:[BP+SI+1],AL ;送出颜色到缓冲区 INC BX ;准备输出下一个字符 LOOP S ;输出下一个字符 POP CX ;恢复外层循环次数 ;DEC CX ADD SI,0A0H ;显示缓冲区偏移地址到下一行的中间 INC DI ;下一行颜色的偏移地址 LOOP PRINT ;输出下一行 MOV AH,07H ;获取键盘输入(无回显),获得显示结果用 INT 21H MOV AX,4C00H INT 21H CODE ENDS END START ;------------------------------------------------------------ ;------------------------------------------------------------
相关文章推荐
- 王爽《汇编语言》第9章 实验9 根据材料编程
- 王爽 汇编语言第二版 实验9 根据材料编程 代码及分析
- 汇编语言 第三版 王爽 实验9 根据材料编程
- 汇编语言(王爽第三版)实验9根据材料编程
- 王爽 汇编语言第二版 实验9 根据材料编程 代码及分析
- 汇编语言(王爽)--实验9根据材料编程
- 王爽《汇编语言》实验9:根据材料编程
- 实验9 根据材料编程
- 汇编 实验9 根据材料编程
- 实验9:根据材料编程
- 汇编语言:实验10 根据材料编程—1.显示字符串
- 汇编语言:实验10 根据材料编程—3.数值显示,编程,将data段中的数据以十进制形式显示出来
- 实验9 根据材料编程
- 汇编语言:实验10 根据材料编程—2.解决除法溢出的问题
- 汇编语言:汇编程序的hello world程序(实验9根据材料编程)
- 王爽《汇编语言》实验10:编写子程序dtoc 解答
- 王爽《汇编语言》实验12:编写0号中断的处理程序 解答
- 王爽《汇编语言》实验15——安装新的INT 9中断例程
- 王爽《汇编语言》实验16——编写包含多个功能子程序的中断例程
- 汇编语言(王爽)--实验十四