組合語言(王爽)實驗七

2021-10-03 15:19:55 字數 1839 閱讀 6954

power idea公司從2023年到2023年的基本情況如下

年份收入(千美元)

雇員人均收入(千美元)

1975163

?1976227

?1977

3829

?1978

135613?

1979

239028?

1980

800038?

………………?

1995

5937000

17800

?程式中已經定義好了這些資料,程式設計,將data段中的資料寫入到table段中,並計算人均收入(取整)

assume cs:codesg,ds:table,es:data

data segment

db '1975', '1976', '1977', '1978', '1979', '1980', '1981'

db '1982', '1983', '1984', '1985', '1986', '1987', '1988'

db '1989', '1990', '1991', '1992', '1993', '1994', '1995'

dd 16, 22, 382, 1356, 2390, 8000, 16000, 24486, 50065, 97479

dd 140417, 197514, 345980, 590827, 803530, 1183000, 1843000

dd 2759000, 3753000, 4649000, 5937000

dw 3, 7, 9, 13, 28, 38, 130, 220, 476, 778, 1001, 1442, 2258

dw 2793, 4037, 5635, 8226, 11542, 14430, 15257, 17800

data ends

table segment

db 21 dup ('year summ ne ?? ')

table ends

codesg segment

start: mov ax,data

mov es,ax

mov ax,table

mov ds,ax

mov bx,0

mov si,0

mov di,168

mov cx,21

s:mov ax,es:[si] ; 存年份

mov [bx].0h[0],ax ; 大小為兩個字

mov ax,es:[si+2] ; 所以要存兩次

mov [bx].0h[2],ax

mov ax,es:[si+84] ; 存收入

mov [bx].5[0],ax

mov ax,es:[si+86] ; 同理,存兩次

mov [bx].5[2],ax

mov ax,es:[di] ; 存雇員人數

mov [bx].10[0],ax

mov ax,es:[si+84]

mov dx,es:[si+86]

div word ptr es:[di] ;因為除數被除數都在記憶體中,要指明除數的長度

mov [bx].13[0],ax

add bx,10h

add si,4

add di,2

loop s

mov ax,4c00h ; 別忘了

王爽 組合語言 實驗七

王爽組合語言實驗七 assume cs code,ds data,es table data segment db 1975 1976 1977 1978 1979 1980 1981 1982 1983 db 1984 1985 1986 1987 1988 1989 1990 1991 1992...

組合語言 《組合語言》王爽 實驗一

從 1000 0 開始寫入命令 a 1000 0 mov ax,4e20 add ax,1416 mov bx,2000 add ax,bx mov bx,ax add ax,bx mov ax,001a mov bx,0026 add al,bl add ah,bl add bh,al mov a...

組合語言 王爽 實驗4

這學期在學彙編,沒怎麼自己動手程式設計過,結果到了中期編不出程式來,實在太尷尬了 特此來補各個實驗。4 11 0 200 0 20b 為什麼等同於 0020 0 0020b?0 200 0x16h 200 00200h 所以拆分成不同的形式即可轉換 assume cs code code segme...