【汇编语言】第 8 章 数据处理的两个基本问题

版权声明:本文为 gfson 原创文章,转载请注明出处。
注:作者水平有限,文中如有不恰当之处,请予以指正,万分感谢。

8.1 bx、si、di 和 bp

【汇编语言】第 8 章 数据处理的两个基本问题_第1张图片
【汇编语言】第 8 章 数据处理的两个基本问题_第2张图片

8.2 指令执行前数据的位置

【汇编语言】第 8 章 数据处理的两个基本问题_第3张图片

8.3 寻址方式

【汇编语言】第 8 章 数据处理的两个基本问题_第4张图片

8.4 处理数据的长度

【汇编语言】第 8 章 数据处理的两个基本问题_第5张图片

8.5 div 指令

【汇编语言】第 8 章 数据处理的两个基本问题_第6张图片

8.6 伪指令 db、dw、dd

  • db 定义字节型数据。
  • dw 定义字型数据。
  • dd 定义双字节型数据。

8.7 dup

【汇编语言】第 8 章 数据处理的两个基本问题_第7张图片

8.8 实验 7

【汇编语言】第 8 章 数据处理的两个基本问题_第8张图片
【汇编语言】第 8 章 数据处理的两个基本问题_第9张图片
  • 答案:
assume cs:codesg,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'
db '1993','1994','1995'
;以上是表示21年的21个字符串
dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000
;以上是表示21年公司总收的21个dword型数据
dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
dw 11542,14430,45257,17800
;以上是表示21年公司雇员人数的21个word型数据
data ends
table segment
db 21 dup('year summ ne ?? ')
table ends
codesg segment
start:
mov ax,data
mov ds,ax
mov si,0
mov ax,table
mov es,ax
mov di,0
mov cx,21
mov bx,0
s:
mov ax,ds:[si] ;年份转送
mov es:[di],ax
mov ax,ds:[si+2]
mov es:[di+2],ax
mov ax,ds:[si+84] ;收入转送
mov es:[di+5],ax
mov dx,ds:[si+84+2]
mov es:[di+7],dx
push cx ;保护cx
mov cx,ds:[84+84+bx] ;雇员数转送
mov es:[di+0ah],cx
div cx ;计算人均收入
pop cx
mov es:[di+0dh],ax ;人均收入转送
add si,4
add bx,2
add di,16
loop s
mov ax,4c00h
int 21h
codesg ends
end start

你可能感兴趣的:(【汇编语言】第 8 章 数据处理的两个基本问题)