組合語言 第三版 王爽 實驗9 根據材料程式設計
題目:
注意事項:
1.windows 7下執行可能看不到效果,我這裡是這樣,安裝xp解決。
2.橫向比較,多篇教程綜合看。
程式碼:
assume cs:code,ds:data,ss:stack data segment db 'welcome to masm!' db 02h,24h,71h data ends stack segment dw 8 dup (0) stack ends code segment start: mov ax,data mov es,ax ; es指向資料段 mov ax,0B800h mov ds,ax ;ds指向顯示的部分 mov bx,0 ;顯示偏移 三次每次增加10h mov si,10h ;顏色的偏移量,三次迴圈每次增加1h mov cx,3 s0: ;三行迴圈 mov ah,es:[si] ;儲存字元的顏色 一個位元組 push cx push si mov cx,16 ;十六次迴圈 mov si,0 ;si顯示區域每次的偏移 每次加2 mov di,0 ;di字元讀取時候每次的偏移 每次加1 s1: ;每一行 先放一個ascii再放屬性,放16次 mov al,es:[di] ;字元放在al裡 ;mov ds:[bx+si],al ;低位元組放字元 mov ds:[bx+si],ax ;mov ds:[bx+si+1],ah ;高位位元組存放顏色 add si,2 add di,1 loop s1 pop si pop cx add si,1h ;偏移量為1指向下一個位元組 add bx,0a0h ;每行160個字元 add dx,1h loop s0 all: jmp short all ;一直迴圈 mov ax,4c00h int 21h code ends end start
結果:
相關推薦
組合語言 第三版 王爽 實驗9 根據材料程式設計
題目: 注意事項: 1.windows 7下執行可能看不到效果,我這裡是這樣,安裝xp解決。 2.橫向比較,多篇教程綜合看。 程式碼: assume cs:code,ds:data,ss
組合語言 第三版 王爽 實驗6 更改大寫字母
題目: 將如圖所示記憶體地址處的小寫字母改為大寫。 注意:si的值每次二重迴圈之前需要重置。 程式碼:assume cs:code,ds:data,ss:stack data segment db '
組合語言 第三版 王爽 實驗12 編寫0號終端的處理程式
題目: 編寫0號中斷的處理程式,使得在除法溢位發生時,在螢幕中間顯示字串“divide error!”,然後返回dos 程式碼: assume cs:code code segment start:
組合語言 第三版 王爽 實驗10-2 編寫子程式 之 解決除法溢位問題 divdw
題目: 分析: 1.也就是把dw資料拆成兩個db資料和db相除。 2.注意引數的傳入和傳出。 程式碼: assume cs:code,ss:stack stack segment db 16 dup
組合語言 第三版 王爽 檢測點2.3
原文 檢測點2.3 (1)下面的3條指令執行後、CPU幾次修改IP?都是在什麼時候?最後IP中的值是多少? MOV AX,BX SUB AX,BX JMP AX 假設 CS=1230H IP=0001H 第一次 CS:IP指向12301H記憶體處,讀取指令MOV AX,BX
王爽《組合語言》第三版-實驗9 根據材料程式設計
assume cs:code,ds:data data segment ;在資料段定義字串 db 'Welcome to masm!' data ends code segment start: mov ax,data mov ds,ax mov ax,0b800h
實驗 9 根據材料程式設計
(一) 1、補全程式 t1.asm,完成在螢幕上輸出記憶體單元中的十進位制兩位數 2、輸出結果 在該實驗中,需要一位一位輸出,div除法運算 (二) 1. 補全程式 t2.asm,完成在螢幕上輸出 data 段定義的 5 個十進位制兩位數,資料
|實驗9 根據材料程式設計
實驗 9 根據材料程式設計 一、實驗結論 1.補全程式 t1.asm,完成在螢幕上輸出記憶體單元中的十進位制兩位數 原始碼: 執行截圖: 2.補全程式 t2.asm,完成在螢幕上輸出 data 段定義的 5 個十進位制兩位數,資料和資料之間以空格間隔。 原始碼: 執行截圖: 3
《組合語言第三版》王爽學習歷程——實驗16
編寫包含多個功能子程式的中斷例程 要求: 安裝一個新的int 7ch中斷例程,為顯示輸出提供如下功能: (1)、清屏; (2)、設定前景色; (3)、設定背景色; (4)、向上滾動一行; 入口引數說明如下。 (1)、用ah暫存器傳遞功能號:0表示
王爽-組合語言第三版實驗7
;1. 資料組織 data 中資料當成陣列,table中資料當成結構體。 ;2. data 用si來定址, table 用 bx , di, idata來定址 assume cs:codesg , ss:stacksg data segment db '1975','1976','1977','1978
組合語言(第三版)實驗10-1,2
1.顯示字串 子程式描述: 名稱:show_str 功能:在指定的位置,用指定的顏色,顯示一個用0結束的字串。 引數:(dh)=行號(取值範圍0~24),(dl)=列號(取值範圍0~79), (
Effective Java 第三版讀書筆記——條款9:使用 try-with-resources 語句替代 try-finally 語句
Java 類庫中包含許多必須手動呼叫 close 方法來關閉的資源, 比如InputStream、OutputStream 和 java.sql.Connection。 從以往來看,try-finally 語句是保證資源正確關閉的最佳方式,即使是在程式丟擲異常或
實驗 9 根據材料編程
是我 緩沖 十進制 寫入 空格 我認 進行 image 不同 實驗內容(1) 補全程序 t1.asm,完成在屏幕上輸出內存單元中的十進制兩位數 大部分沒什麽好說的,將數值轉換為數字字符我認為是將數值轉為為ASCII對應的字符,然後我查閱ASCII表發現表中字符與對應數字的
實驗9 根據材料編程
執行 行號 註釋 不難 成功 任務 .com 結合 star 1. 補全程序 t1.asm,完成在屏幕上輸出內存單元中的十進制兩位數 補全得t1。asm如下: 1 ; 在屏幕上輸出內存單元中的十進制兩位數 2 assume cs:code, ds:data 3 da
實驗9 根據材料編程
顯示 單元 nbsp 運行 總結 內存 輸出 位數 藍色 任務一:在屏幕上輸出內存單元中的十進制兩位數。 (1)源程序。 (2)運行結果。 任務二:在屏幕上輸出data段定義的5個十進制兩位數,數據和數據之間以空格間隔。 (1)源程序。 (2)結果。
彙編實驗玖 根據材料程式設計
南京資訊工程大學實驗報告 實驗名稱 實驗九 根據材料程式設計 實驗日期 12.09 &nbs
實驗九 根據材料程式設計
一、實驗結論 1、原始碼: ; 在螢幕上輸出記憶體單元中的十進位制兩位數assume cs:code, ds:datadata segment db 12 db ?,? ; 前一個位元組用於儲存商,後一個位元組用於儲存餘數data endscode segmentstart: mov ax,data mo
實驗九--根據材料程式設計
實驗內容: 1. 補全程式 t1.asm,完成在螢幕上輸出記憶體單元中的十進位制兩位數 ; 在螢幕上輸出記憶體單元中的十進位制兩位數 assume cs:code, ds:data data segment db 12 db 0h,0h ; 前一個位元組用於儲存商
王爽《組合語言》(第三版) 實驗8、9:
下面的程式簡單分析了一下: assume cs:code code segment mov ax, 4c00H int 21h s
王爽《匯編語言》(第三版)實驗9解析
src p s 代碼 出棧 語言 註意 指向 .com 第一個 簡介 題目請對照書本 代碼 assume cs:code data segment db ‘welcome to masm!‘ db 02h,24h,71h ; 要求的三個顏色對應的16