这章的内容也不多,前面讲了一点新的内容,后面讲了不错的应用。代码也很全。
有一个注意的就是不要抄完代码做完就算结束了,要自己不看书完整的写出来比较好。
而对于实验十六,直接把着书上的代码拿过去是不行的,debug跟踪会发现找不到正确执行的地址。只要把地址搞正确就行了,有了前面十几章的独立解决问题的锻炼,这个问题是不太难的。
抓住"相对地址"就ok了。
还有最后一章 17章,今天先不写了^_^...
- [nanjixing8119] 我也问和这个朋友同样的问题[ andyhl333 发表于 2011-05-26 18:55 11/24 20:56
- [andyhl333] 前言上说要学习本书就要具备以下基础: 1,具有计算机使用经验; 2,具有二进制、十六进制等基础知 05/26 18:55
- [masmaster] 学习~~~ 07/10 14:28
- [761114] 说的太好了,你叫我怎么夸你呢!这样吧,给你一句话吧。你太有才了!!!!!!! 06/09 22:51
- [hao76762401] 顶那三条原则! 05/23 19:32
- [1119174611] 一、没有通过检测点不要向下学习, 二、没有做完当前实验不要向下学习。 我觉得 二、没有做完当 05/10 00:37
- [hejianliangjia] 看到这篇文章大家很幸运,我是吃了不少苦头才悟到,不过 “一、没有通过检测点不要向下学习, 二、 05/04 01:01
- [游客] 哈哈,向自己学,汇编的书好难懂的,看不下去了 05/01 20:32
- [lenient315] 说的不错 看完王爽老师的书后看看LZ推荐的 04/21 11:27
- [qingjiaozhe2010] 太深奥了,现在还不理解 04/08 11:33
[2008-11-27 18:04] 第十六章
阅读全文 |
评论次数(1) |
浏览次数(607) |
所属类型(汇编作业)
[2008-11-27 17:53] 第十二章-第十五章
相对前十章而言,通过几章的学习理解讲的机制要比程序更重要。(不过如果自己独立完成课设一,这些程序也算不少有什么难度了)
第十二章 内中断
开始讲解中断了,不过知识介绍的比较细,又加上代码比较完整,可以用实验很容易的验证学习的内容没什么可说的了。
第十三章 int
除了讲了自己安装中断,还提到了bos和bios提供的中断,对于这个,书上只是举个例子,具体的使用可以去查表。这个和c语言的ansi函数和java的api没什么区别,当然如果都看过使用更熟练了。
可以自己查查系统提供的中断玩玩,解解自己做的时候的郁闷 呵呵
不过最根本还是明白这个中断机理,而int21h的...
第十二章 内中断
开始讲解中断了,不过知识介绍的比较细,又加上代码比较完整,可以用实验很容易的验证学习的内容没什么可说的了。
第十三章 int
除了讲了自己安装中断,还提到了bos和bios提供的中断,对于这个,书上只是举个例子,具体的使用可以去查表。这个和c语言的ansi函数和java的api没什么区别,当然如果都看过使用更熟练了。
可以自己查查系统提供的中断玩玩,解解自己做的时候的郁闷 呵呵
不过最根本还是明白这个中断机理,而int21h的...
阅读全文 |
评论次数(1) |
浏览次数(604) |
所属类型(汇编作业)
[2008-11-27 17:44] 第十一章
后面就开始连续讲中断了,这章就单列出来吧o(∩_∩)o...
其实也没什么可说的,这章记忆的东西还是蛮多的,并且要注意各个标志位的区分,多用debug跟踪分析一下对学习这样很有帮助。(debug下标志位的值对照在11.12)
我觉得这章主要是多用多分析,也就自然熟练了。...
其实也没什么可说的,这章记忆的东西还是蛮多的,并且要注意各个标志位的区分,多用debug跟踪分析一下对学习这样很有帮助。(debug下标志位的值对照在11.12)
我觉得这章主要是多用多分析,也就自然熟练了。...
阅读全文 |
评论次数(1) |
浏览次数(642) |
所属类型(汇编作业)
[2008-11-27 11:13] 字节 字 双字 四字
·字节:存储器中存取信息的基本单位。我们常说某存储器容量是64MB,就是说该存储器有64M(1M=2^20)个字节。
·字:一个字16位,占用两个字节,8086的字长就是16位的。
·双字:一个双字32位,由4个字节组成。
·四字:一个四字64位,由8个字节组成。...
·字:一个字16位,占用两个字节,8086的字长就是16位的。
·双字:一个双字32位,由4个字节组成。
·四字:一个四字64位,由8个字节组成。...
阅读全文 |
评论次数(1) |
浏览次数(592) |
所属类型(汇编作业)
[2008-11-26 16:41] 前言-书的精华
谢谢网友kookey的提醒,前言是一本书首要读的,也是一本书的精华。不能由于他没有具体的知识而忽略,相反前言更需好好去读。这里先补齐它。
学习汇编的两个根本目的:
一、充分获得底层编程的体验
二、深刻理解机器运行的机理
--------
个人看法,语言只是工具,从计算机语言的发展来看,汇编的“实际使用”的地方已经很少了,但是它的重要并不仅仅限于使用,换句话说仅仅因为汇编语言的使用来学汇编的原地是肤浅的。
(如果想使用汇编,建议学完8086汇编后看看80x86)
并推荐看下面这篇文章:学习完16位汇编之后
http://www.asmedu.net/news.jsp?in...
学习汇编的两个根本目的:
一、充分获得底层编程的体验
二、深刻理解机器运行的机理
--------
个人看法,语言只是工具,从计算机语言的发展来看,汇编的“实际使用”的地方已经很少了,但是它的重要并不仅仅限于使用,换句话说仅仅因为汇编语言的使用来学汇编的原地是肤浅的。
(如果想使用汇编,建议学完8086汇编后看看80x86)
并推荐看下面这篇文章:学习完16位汇编之后
http://www.asmedu.net/news.jsp?in...
阅读全文 |
评论次数(18) |
浏览次数(41613) |
所属类型(汇编作业)
[2008-11-25 17:12] c语言中使用中断来显示
/*
使用中断 int 21h ah=40h
*/
#include "dos.h"
void main(void)
{
union REGS inregs,outregs;
struct SREGS segs;
char far *str = "Hello world! \n";
inregs.h.ah = 0x40;/*ah = 40H*/
inregs.x.bx = 1;
inregs.x.cx = str_length(str);
inregs.x.dx = FP_OFF(...
使用中断 int 21h ah=40h
*/
#include "dos.h"
void main(void)
{
union REGS inregs,outregs;
struct SREGS segs;
char far *str = "Hello world! \n";
inregs.h.ah = 0x40;/*ah = 40H*/
inregs.x.bx = 1;
inregs.x.cx = str_length(str);
inregs.x.dx = FP_OFF(...
阅读全文 |
评论次数(1) |
浏览次数(580) |
所属类型(汇编作业)
[2008-11-25 17:10] 看看c语言中是怎么访问寄存器地
/*
struct WORDREGS{
unsigned int ax,bx,cx,dx,si,di,cflag,flags;
};
struct BYTEREGS{
unsigned char al,ah,bl,bh,cl,ch,dl,dh;
};
union REGS{
struct WORDREGS x;
struct BYTEREGS h;
};
*/
#include "dos.h"
main()
{
union REGS inregs,outregs;
inregs.h.ah = 0x2a;
int...
struct WORDREGS{
unsigned int ax,bx,cx,dx,si,di,cflag,flags;
};
struct BYTEREGS{
unsigned char al,ah,bl,bh,cl,ch,dl,dh;
};
union REGS{
struct WORDREGS x;
struct BYTEREGS h;
};
*/
#include "dos.h"
main()
{
union REGS inregs,outregs;
inregs.h.ah = 0x2a;
int...
阅读全文 |
评论次数(1) |
浏览次数(490) |
所属类型(汇编作业)
[2008-11-25 17:05] 第九章-第十章
第九章 转移指令的理解
这章的指令比较相近,自己总结比较一下比较好。尤其是实验八,不要草率的下结论,用debug跟踪看看。
试验九能让我们自己显示了,这个可比打印hello word有成就的多,自己阅读一篇资料并写出自己程序功能是有很必要的能力,debug也多跟踪下看看。
第十章 call ret
指令没什么说的,用已经指令去描述新的指令我只有在这本书上看到,非常的棒~
子程序也就是c语言中咱们学到的函数,java中的方法,没什么特殊的。后面学到的中断也是如此,不过提供者不同他们叫标准函数罢了。
者三个子程序还是有点难度的,一...
这章的指令比较相近,自己总结比较一下比较好。尤其是实验八,不要草率的下结论,用debug跟踪看看。
试验九能让我们自己显示了,这个可比打印hello word有成就的多,自己阅读一篇资料并写出自己程序功能是有很必要的能力,debug也多跟踪下看看。
第十章 call ret
指令没什么说的,用已经指令去描述新的指令我只有在这本书上看到,非常的棒~
子程序也就是c语言中咱们学到的函数,java中的方法,没什么特殊的。后面学到的中断也是如此,不过提供者不同他们叫标准函数罢了。
者三个子程序还是有点难度的,一...
阅读全文 |
评论次数(1) |
浏览次数(527) |
所属类型(汇编作业)
[2008-11-25 16:55] 第五章-第八章
第五章
书上有例子带着我们用debug去跟踪程序,多练习几遍。
对于[bx] loop指令的理解,有什么想法就用debug验证。
注意:5.4 debug和masm.exe对指令的不同处理。
第六章 包含多个段的程序
根据书的进度,自然过渡到了这里了,也没什么好说的,注意一下实验的一些空答案不是唯一的,不同的电脑实验结果是不一样的,但是不影响段间的差值,还有就是程序返回前是指执行到mov ax,4c00h int 21h前。
第七章 灵活的定位内存地址的方法
实验6都说用debug跟踪执行过程,进一步理解所讲的内容,就不多说...
书上有例子带着我们用debug去跟踪程序,多练习几遍。
对于[bx] loop指令的理解,有什么想法就用debug验证。
注意:5.4 debug和masm.exe对指令的不同处理。
第六章 包含多个段的程序
根据书的进度,自然过渡到了这里了,也没什么好说的,注意一下实验的一些空答案不是唯一的,不同的电脑实验结果是不一样的,但是不影响段间的差值,还有就是程序返回前是指执行到mov ax,4c00h int 21h前。
第七章 灵活的定位内存地址的方法
实验6都说用debug跟踪执行过程,进一步理解所讲的内容,就不多说...
阅读全文 |
评论次数(2) |
浏览次数(564) |
所属类型(汇编作业)
[2008-11-25 16:37] 基础部分-前四章
第一章
地址总线
数据总线
控制总线
---------
这里难理解的可能是地址总线了,地址总线的宽度决定了cpu的寻址能力,也就是能找到多少个存储单元(而微型计算机的存储单元可以存储一个字节),也就是能寻址多少Byte。
一根地址线可以发出0 1两种信号,也就是能寻址2个Byte。
同理,10根地址线能访问1KB。
还有一个重点是内存地址空间的划分。
第二章 寄存器
前面介绍了寄存器和简单的汇编指令,细心和多理解、练习几遍就没什么问题。注意一下16位cpu结构和给出物理地址的方法和原因。这可是前人智慧的体现;)
对cs/ip的图例要理解清楚,真的! ...
地址总线
数据总线
控制总线
---------
这里难理解的可能是地址总线了,地址总线的宽度决定了cpu的寻址能力,也就是能找到多少个存储单元(而微型计算机的存储单元可以存储一个字节),也就是能寻址多少Byte。
一根地址线可以发出0 1两种信号,也就是能寻址2个Byte。
同理,10根地址线能访问1KB。
还有一个重点是内存地址空间的划分。
第二章 寄存器
前面介绍了寄存器和简单的汇编指令,细心和多理解、练习几遍就没什么问题。注意一下16位cpu结构和给出物理地址的方法和原因。这可是前人智慧的体现;)
对cs/ip的图例要理解清楚,真的! ...
阅读全文 |
评论次数(1) |
浏览次数(558) |
所属类型(汇编作业)