汇编语言:汇编程序的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语言版:装饰器模式