| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 646 人关注过本帖
标题:汇编结构中的变址疑问
只看楼主 加入收藏
wangyucoming
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-11-11
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:8 
汇编结构中的变址疑问
;程序名:T7_1.ASM
 ;功 能:对学生成绩求总
 ;定义变量
 COUNT = 30 ;学生总数
 ;定义学生各门课成绩结构SCORE
 SCORE STRUC
 NO DW ? ;学号
 SNAME DB 8 DUP(?) ;姓名
 CHC DB  ? ;语文成绩
 MATH DB  ? ;数学成线
 ENG DB  ? ;英语成线
 SCORE  ENDS
 ;定义学号和总成绩结构ITME
 ITME  STRUC
 NOS  DW  ? ;学号
 SUM  DW  ? ;总成绩
ITME  ENDS
 ;数据段
 DSEG  SEGMENT
 BUFFER  SCORE < > ;定义存放原始数据的缓冲区
STALE  ITME COUNT DUP(<>) ;学生总成绩变量名定义
FNAME1 DB 'SCORE.DAT',0 ;存放原始数文档
FNAME2 DB 'SCORE.SUM',0 ;存放总成绩文档
 DSEG ENDS
 ;代码段
 CSEG   SEGMENT
 ASSUME CS:CSEG,DS:DSEG ;设置段与数据段之间的关系
START:
 MOV AX,DSEG ;数据段关联
MOV DS,AX

 ;打开SCORE.DAT文件
MOV DX,OFFSET FNAME1
 MOV AX,3D00H
 INT 21H

 MOV BX,AX
 MOV DI,COUNT ;设置循环数
MOV SI,OFFSET STALE ;设置存放总成绩的缓冲区
READ:
MOV DX,OFFSET BUFFER;存放成绩的缓冲区
MOV CX,TYPE BUFFER
 MOV AH,3FH  ;读取文件
INT 21H

 XOR AH,AH  ;清空AH
 MOV AL,BUFFER.CHC ;成绩求总
ADD AL,BUFFER.MATH
 ADC AH,0H
 ADD AL,BUFFER.ENG
 ADC AH,0H
MOV [SI].SUM,AX  MOV AX,BUFFER.NO
MOV [SI].NOS,AX
 ADD SI,TYPE ITME
 DEC DI
 JNZ  READ
 ;创建文件SCORE.SUM
 MOV DX,OFFSET FNAME2
 MOV CX,0H  ;普通文件
MOV AH,3CH
 INT 21H
 MOV BX,AX
 ;写入文件
MOV DX,OFFSET STALE
 MOV CX,(TYPE ITME)*COUNT
 MOV AH,40H
 INT 21H
 MOV AH,3EH
 INT 21H
 MOV AX,4C00H
 INT 21H
 CSEG ENDS
 END START
 (masm6.11)编译的时候下面这两段报错,我都是按80X86书上敲的..
 MOV [SI].SUM,AX  MOV [SI].NOS,AX  
搜索更多相关主题的帖子: 结构 总成绩 影片 
2012-12-20 20:20
x64asm
Rank: 2
来 自:X64ASM
等 级:论坛游民
威 望:1
帖 子:45
专家分:36
注 册:2010-5-20
收藏
得分:0 
楼主您不发作业能死人嘛?

姓名:旖旎[x64asm]
QQ:6405035,6405038
2012-12-20 20:43
suijishu
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:66
专家分:144
注 册:2012-12-1
收藏
得分:0 
9494
2012-12-20 21:42
朱三哥
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:311
专家分:359
注 册:2012-12-11
收藏
得分:0 
您这个?
没法

哥,破你无线很难的,不要老是改,少看路由器上的灯,你会死啊
2012-12-21 16:48
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
很久没有接触汇编,都快忘光了。有这种格式的变址吗?
MOV [SI].SUM,AX  MOV AX,BUFFER.NO
MOV [SI].NOS,AX

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2012-12-21 17:06
wangyucoming
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-11-11
收藏
得分:0 
朋友!首先一点,这个不是作业,这个只是书上的例题.但是例题运行的时候报错我想知道为什么而已!朋友如果你没有能力解决你可以完全没有必要说!每个人生来又不是什么都懂..
2012-12-21 23:24
wangyucoming
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-11-11
收藏
得分:0 
以上的话是对二楼说的
2012-12-21 23:26
小习小习
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:6
帖 子:1467
专家分:4792
注 册:2012-7-2
收藏
得分:20 
MOV [SI].SUM,AX  MOV AX,BUFFER.NO
MOV [SI].NOS,AX
首先得确定打红线的语句是不是在同一行,偶就把 MOV AX,BUFFER.NO另起一行就行了,我用的masm5.0编译通过

实现自己既定的目标,必须能耐得住寂寞单干。
2012-12-22 00:24
wangyucoming
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-11-11
收藏
得分:0 
刚才重新查看了一下!发现是自己编译的须序出了问题..
2012-12-22 20:47
快速回复:汇编结构中的变址疑问
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030082 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved