鱼C论坛

 找回密码
 立即注册
查看: 2990|回复: 8

[技术交流] 第8章的实验,分享一下。。。

[复制链接]
发表于 2011-11-13 23:27:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
assume        cs:codesg,ss:stack,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'
        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
stack        segment
        dw        0,0,0,0,0,0,0,0
stack        ends
table        segment
        db        21        dup        ('year summ ne ?? ')
table        ends
codesg        segment
start:                    mov        ax,        data
                mov        ds,        ax                                ;数据段寄存器
                mov        ax,        table                       
                mov        es,        ax              ;table段寄存器
                mov        ax,        stack
                mov        ss,        ax                               
                mov        sp,        16              ;设置桟段指针
                mov        bx,        0              ;bx为年份指针,初始时指向年份起始地址
                mov        bp,        0              ;bp为table段基址寄存器
                mov        si,        84              ;si是收入指针,初始时指向收入起始地址
                mov        di,        168              ;di是人数指针,初始时指向人数起始地址
                mov        cx,        21              ;cx中存放循环次数
        s:        push        cx                      ;计数值压栈
                mov        ax,        [bx]                       
                mov        es:[bp],        ax
                add        bx,        2
                mov        ax,        [bx]
                mov        es:[bp+2],        ax    ;处理年份
                add        bx,        2               
               
                mov        ax,        [si]              ;这里特意让收入的低8位通过ax传送,是为了后面算平均收入作准备
                mov        es:[bp+5],        ax
                add        si,        2               
                mov        dx,        [si]             ;这里特意让收入的高8位通过dx传送,是为了后面算平均收入作准备
                mov        es:[bp+7],        dx        ;搬移收入
                add        si,        2
               
                mov        cx,        [di]                ;人数通过cx传送,也是为后面算平均收入作准备
                mov        es:[bp+10],        cx        ;搬移人数部分
                add        di,        2
                div        cx                        ;前面准备工作都做好了,只要div cx就算出了平均收入
                mov        es:[bp+13],        ax        ;把商送入指定单元
                add        bp,        16                ;处理下一个年份的内容
                pop        cx                        ;计数数值出栈到cx中
                loop        s               
                mov        ax,        4c00h
                int        21h
codesg        ends
end        start
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-11-13 23:48:31 | 显示全部楼层
沙发。。。表示我只学到了第五章。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-11-13 23:49:21 | 显示全部楼层
哦不。。是看到了第五章。。。还有很多还是学不明白。 话说为什么都不讲 od所显示的 eax ebx 多了个e呢? 这是什么区别
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-11-13 23:59:47 | 显示全部楼层

EAX 是32位寄存器
AX   是16为寄存器
为什么不讲,问问!小甲鱼大爷!你的知道了;P
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-11-14 00:00:55 | 显示全部楼层
嘿嘿, 学到 课程实验一 就难了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-11-14 00:09:55 | 显示全部楼层
关键是感觉 发表于 2011-11-13 23:59
EAX 是32位寄存器
AX   是16为寄存器
为什么不讲,问问!小甲鱼大爷!你的知道了

呃。好的 谢谢您
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-11-14 12:29:22 | 显示全部楼层
学得真快撒。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-11-14 16:07:36 | 显示全部楼层
自己专业也有好多课,都忙不过来了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-11-16 10:09:03 From FishC Mobile | 显示全部楼层
在学校,两个月没学了,看了这例子,差不多复习好了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-19 10:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表