汇编语言:汇编程序的hello world程序(实验9根据材料编程)
生活随笔
收集整理的这篇文章主要介绍了
汇编语言:汇编程序的hello world程序(实验9根据材料编程)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
实验介绍
学习每一种编程语言,第一个程序一般都是hello world,一般都是往控制台进行输出。但是学习汇编语言,汇编语言王爽这本书学习了一大半才有了往控制台输出内容。这是教材中的实验9 根据材料编程的实验,在屏幕中间分别显示黑底绿色、绿底红色、白底蓝色的字符串'welcome to masm!'。权且当做汇编语言的hello world的吧。实验结果
先展示运行程序运行结果
实验思路
其实就是往显存里面放数据!一个源数据段,一个目的数据段,一个临时数据段。显示3种不同颜色的字符串,可以用一个loop循环,往显存中放字符串,同样需要一个loop ,所以就要使用loop嵌套循环,使用嵌套循环 那么cx 就要存放到临时数据中。然后就是显示器每行80个字符,每个字符占2个字节,偶数字节存放字符ASCII码值,奇数字节存放显示属性。一定要明确数据在哪里,数据怎么处理,数据放哪里,这3个问题。实验代码
;实验9 编程:在屏幕中间分别显示黑底绿色、绿底红色、白底蓝色的字符串'welcome to masm!' assume cs:codesgdata segmentdb 'welcome to masm!' ;16个字符db 00000010B ;黑底绿字db 00100100B ;绿底红字db 01110010B ;白底绿字 data ends stack segmentdw 0 stack endscodesg segment start:;设置栈段 存放临时数据mov ax,stackmov ss,axmov sp,2;往目的地址->显示器缓存区写东西就可以了mov ax,0B800Hmov es,ax;源地址mov ax,datamov ds,axmov si,16mov di,160*11+160/2-16 ;每页25行,在11~13行进行居中展示。注意一个字符2个字节! mov cx,3showWelcom: push cxmov cx,16mov bx,0;每行80个字符,80个字节,显示属性占80个字节,一行占 160个字节showString:mov al,ds:[bx]mov es:[di],al ;偶数字节 放字符ASCII值mov al,ds:[si] mov es:[di+1],al ;奇数字节 放颜色属性值inc bxadd di,2loop showStringadd di,128add si,1pop cxloop showWelcommov ax,4c00hint 21h codesg ends end start总结
以上是生活随笔为你收集整理的汇编语言:汇编程序的hello world程序(实验9根据材料编程)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 黑马程序员_java基础笔记(06)..
- 下一篇: C语言版:装饰器模式