实验7,代码+分析,请多指教
本帖最后由 linha0 于 2011-6-29 14:24 编辑assume cs:code,ds: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'
;以上是表示21年的21个字符串。共84个字节,起始单元:0
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型数据。共84个字节,起始单元:84
dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
dw 11542,14430,15257,17800
;以上是表示21年公司雇员人数的21个word型数据。共42个字节,起始单元:168
data ends
table segment
db 21 dup ('year summ ne ?? ')
table ends
code segment
start:
mov ax,data
mov ds,ax
mov ax,table
mov es,ax
mov bx,0
mov si,0
mov di,0
mov cx,21
s: mov ax,
mov es:,ax
mov ax,2
mov es:2,ax
;以上,从Data中复制年份到Table
mov ax,84 ;总收入的低16位数
mov dx,86 ;总收入的高16位数
mov es:5,ax ;4单元中的空格不变
mov es:7,dx
; 以上,从Data中复制总收入到Table
div word ptr 168 ;计算人均收入,并存入AX中
mov dx,168
mov es:10,dx ;复制雇员数,9单元中的空格不变
mov es:13,ax ;将人均收入存入Table中
add bx,4 ;在Data中,表示为指向下一年的(年份、总收入)双字型数据
add si,2 ;在Data中,表示为指向下一年的(雇员数)字型数据
add di,16 ;在Table中,表示为指向下一年的数据项集合
loop s
mov ax,4c00h
int 21h
code ends
end start
你的起始单元都是用十进制的,这样怎么也可以,小甲鱼的都是转换成16进制的 编译器会帮我们转化的:lol 我也喜欢用十进制:lol 你们这样不会出意外吧 table段为什么不关联
不关联会怎么样 本帖最后由 linha0 于 2011-7-12 18:50 编辑
milorguan 发表于 2011-7-12 16:55 static/image/common/back.gif
table段为什么不关联
mov ax,table
mov es,ax
不是很明白“关联”这个词在你心里是什么意思?
难道是把它的段地址设置到段寄存器,就叫做“关联”?
如果是这个意思话,这个关不关联都差不多。凡是用“segment…………ends”定义的段都将占据一定内存空间(不管“关联”与“不关联”),而这个空间必定为16的倍数。
还有一点要记住,内存空间是个线性的空间;而“段”的概念是人们定义的,主要是为了方便寻址而已;
linha0 发表于 2011-7-12 18:50 static/image/common/back.gif
不是很明白“关联”这个词在你心里是什么意思?
难道是把它的段地址设置到段寄存器,就叫做“关联 ...
关联的意思是 assume...........
milorguan 发表于 2011-7-12 21:44 static/image/common/back.gif
关联的意思是 assume...........
上面的解释还是一样有用。 linha0 发表于 2011-7-13 12:06 static/image/common/back.gif
上面的解释还是一样有用。
我的意思是用assume关联寄存器 milorguan 发表于 2011-7-13 12:57 static/image/common/back.gif
我的意思是用assume关联寄存器
都说了,不管“关联”与“不关联”,都没有多大的影响。
你就算把"assume…………"去掉,对程序也没多大的影响(按照我学到第11章的认识来看)
哇,哇,哇, 不关联你用MASM编译的时候不报错么? Mr.han 发表于 2011-7-15 05:46 static/image/common/back.gif
不关联你用MASM编译的时候不报错么?
我用实验7的代码测试过,暂时没有出现错误!
看帖就要回帖支持下 看看老帖,支持下 assume es:table?
页:
[1]