汇编网首页登录博客注册
dongliang的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
文章收藏
友情链接

[2009-01-11 22:30] 实验17 包含多个功能号的中断例程

实验17,包含多个功能号的中断例程
       (功能好像不多啊?)

CODE SEGMENT 
    ASSUME CS:CODE 
START: 
    MOV AX,SEG INTR 
    MOV DS,AX 
    MOV SI,OFFSET INTR 
    MOV AX,0 
    MOV ES,AX 
    MOV DI,200H 
    MOV CX,OFFSET INTREND-OFFSET INTR 
    CLD 
    REP MOVSB 
    MOV AX,0 
    MOV DS,AX 
    MO...
阅读全文 | 评论次数(1) | 浏览次数(687) | 所属类型(汇编作业)

[2009-01-10 00:03] 实验16 多功能中断例程

CODE SEGMENT 
    ASSUME CS:CODE 
START: 
    MOV AX,SEG INTR 
    MOV DS,AX 
    MOV SI,OFFSET INTR 
    MOV AX,0 
    MOV ES,AX 
    MOV DI,200H 
    MOV CX,OFFSET INTREND-OFFSET INTR 
    CLD 
    REP MOVSB 
    MOV AX,0 
    MOV DS,AX 
    MOV SI,7CH*4 
    MOV AX,200H 
    MOV [...
阅读全文 | 评论次数(2) | 浏览次数(864) | 所属类型(汇编作业)

[2009-01-07 22:29] 实验15 写新中断(探讨)

直接在windows中好像改不了9号中断向量,受保护的。
所以下面的程序没经过调试,恳请大家给我指错.....

CODE SEGMENT
        ASSUME CS:CODE
START:
    MOV AX,SEG INTR
    MOV DS,AX
    MOV SI,OFFSET INTR
    MOV AX,0
    MOV ES,AX
    MOV DI,204H
    MOV CX,S4-OFFSET INTR
    CLD
    REP MOVSB
    PUSH ES:[9*4]
    POP ES:[200H]
    PU...
阅读全文 | 评论次数(2) | 浏览次数(695) | 所属类型(汇编作业)

[2009-01-07 15:12] 实验14 显示日期和时间

当看到这个实验时,我把它看成有两部分组成:一、依次从端口读取数据;二、将读取的数据显示出来
 第一部分可以用一个循环以简化程序,因此要把端口单元号存在数据段;第二部分,每次显示的代码都一样,因此可以用一个子程序来实现。 
 分隔符的显示:每次数据显示后,显示什么样的分隔符或要不要显示,与当前显示第几个数有关,所以可以根据CX的值来控制分隔符显示
有了上述分析后,就可以开始写代码了:

DATA SEGMENT
        DB 9,8,7,4,2,0 ;要读取单元号
DATA ENDS
CODE SEGMENT
        START:
        MOV AX,DATA
        MOV DS,AX
        M...
阅读全文 | 评论次数(1) | 浏览次数(687) | 所属类型(汇编作业)

[2009-01-07 09:46] 实验12 除法溢出中断

这个实验实际上就是书上讲的例子,搬过来就行了,前提是真正理解透了

CODE SEGMENT
        ASSUME CS:CODE
START:
    MOV AX,SEG INTR
    MOV DS,AX
    MOV SI,OFFSET INTR
    MOV AX,0
    MOV ES,AX
    MOV DI,200H
    MOV CX,OFFSET INTREND-OFFSET INTR
    CLD
    REP MOVSB
    MOV AX,0
    MOV DS,AX
    MOV SI,0
    MOV AX,20...
阅读全文 | 评论次数(2) | 浏览次数(782) | 所属类型(汇编作业)

[2009-01-06 21:32] 实验11 编写子程序

感觉这个程序好简单,不想多说什么,大家都会也没什么好讲.......


DATA SEGMENT
        DB "Beginner's All-purpose Symbolic Instruction Code.",0
        DATA ENDS
CODE SEGMENT
        ASSUME CS:CODE,DS:DATA
START:
    MOV AX,DATA
    MOV DS,AX
    MOV SI,0
    CALL LETTERC
    MOV AH,4CH
     INT 21H
     
 LETTERC:
    PUSH AX
OK3...
阅读全文 | 评论次数(1) | 浏览次数(691) | 所属类型(汇编作业)

[2008-12-31 10:37] 课设一(完成与交流)

点击查看原图
看到这次课设的题目时,第一感觉是应该不怎么难:一、充分利用实验十中的三个字程序,就可以显示,转化,求商;二、用一个大循环,循环而是一次。我的思路就是这样的,很简洁;但在过程中还是挺麻烦的,跟上个实验一样,有限的寄存器被多次使用或调用,一不小心该保留的值就被改了。我以前也遇到过这情况,还反省过;直到这次我才明白:这么个小小的问题还真有学问和深度呢!如果能很好的处理这个,课设就没问题了!    
    先说一下三个字程序的细微变化吧,我在上一篇“实验十改进--三合一”中改进的三个字程序,只需加上寄存器值保护就可以直接拿来用(改进之处不再重复);原SHOW_STR显示DS:SI开始的字符串,现将...
阅读全文 | 评论次数(0) | 浏览次数(376) | 所属类型(汇编作业)

[2008-12-26 21:58] 推荐博文 实验10----三个子程序与学习

弄了好久才出来,嘿,惭愧!惭愧!
    其实这个程序大概结构书上都已经给出了,要编写出来并不困难,但要注意些细节的地方,特别是各个寄存器的值和它们之间的关系。这个程序的一个重要特点就是各寄存器重复交错使用,好容易搞错的!我就吃了这个亏:我原来CL(颜色数据)是放在主程序中的,即在SHOW_STR 外,结果‘Welcome...‘能够正常显示,但DTOC中调用show_str显示12666时,却是一串黑条,完全不对(可正常编译)!所以我就先检查dtoc,然后是检查整个程序,一遍又一遍,都没查出来,我几乎要崩溃了!!后来才偶然发现在dtoc 中cl(颜色)的值被改了,改过来之后就正确啦,呵呵 ...
阅读全文 | 评论次数(1) | 浏览次数(886) | 所属类型(汇编作业)

[2008-12-14 13:18] 实验九--显示字符串全过程

在写实验九的具体程序之前,应该将所给的资料读懂透,这包括显示器显示的内容在缓存中的对应位置及其属性位置;要显示的字符的属性的二进制数是多少;显示器缓存的偏移地址和段地址怎么设置;数据段怎么与显存内字符地址对应起来(这点最关键),我个人认为以上是这个程序编写的主要内容,将这几个部分很好的结合起来就能写出完整的程序,但是方法绝对不止一种,每个人都有自己编写的习惯和思维。
    下面是我编写的程序:(拿来与大家分享一下,调试过的)
  ------------------
DATA SEGMENT
DB 'welcome to masm!'
DATA ENDS
CODE SEGMENT...
阅读全文 | 评论次数(1) | 浏览次数(403) | 所属类型(汇编作业)

[2008-12-13 13:21] 推荐博文 实验七--程序+注释+调试结果+总结

实验七的完整程序如下:
----------------------(不足之处,请批评指正)
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'
 DD 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
 DD 345...
阅读全文 | 评论次数(6) | 浏览次数(1072) | 所属类型(汇编作业)
页码数(2):  1  2