《組合語言》第三版實驗9 詳解 根據材料程式設計

2021-08-20 12:41:20 字數 1324 閱讀 2354

程式設計:在螢幕中間分別顯示綠色、綠底紅色、白底藍色的字串『welcome to masm!'。

assume cs:code,es:data,ss:stack    ;定義三個段,分別為**段codesg、資料段、棧段

data segment

db 'welcome to masm!'

db 02h,24h,71h    ;定義題目所需三種位元組屬性

data ends

stack segment

db 16 dup (0)    ;16個位元組全為0的棧

stack ends

code segment

start:

mov ax,data

mov es,ax

mov ax,stack ;定義棧,用於多重迴圈

mov ss,ax

mov sp,10h

mov ax,0b890h    ;緩衝區的首中間位址

mov ds,ax

mov bx,0

mov si,10h            ;si偏移至ds段中儲存位元組屬性位址

mov cx,3

s0: mov ah,es:[si]        ;ah儲存位元組屬性

push cx                ;cx,si壓棧

push si

mov cx,16

mov si,0

mov di,0

s1: mov al,es:[di]            ;al儲存字元

mov ds:[bx+si],al         ;偶位址寫入字元

mov ds:[bx+si+1],ah       ;奇位址寫入位元組屬性

add si,2

add di,1                   ;遍歷字串

loop s1

pop si                     ;出棧

pop cx

add si,1h                  ;指向下乙個顏色

add bx,0a0h                ;換至下一行

add dx,1h                 ;指向下乙個字元

loop s0

mov ax,4c00h

int 21h

code ends

end start

執行結果如下....

《組合語言》王爽第三版 實驗9

datas segment 此處輸入資料段 db w 00000010b,e 00000010b,l 00000010b,c 00000010b,o 00000010b db m 00000010b,e 00000010b,0,t 00100100b,o 00100100b,0 db m 01110...

《組合語言》 王爽第三版實驗9

assume cs code,ds data data segment db welcome to masm db 02h,24h,71h 綠色 綠底紅色 白底藍色 data ends code segment start mov ax,0b800h mov ds,ax mov bx,160 14 ...

組合語言(第三版)實驗七

分析 考慮到table表有21條資料,每條資料有4個成員,年份 4個位元組 收入 4個位元組 雇員數 2個位元組 人均收入 2個位元組 加上中間的空格,共16個位元組 用bp si idata 在data段中定位年份和收入 用di si 在data段中定位雇員數 用bx idata 在es段定位資料...