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

我的博客

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

[2008-05-02 08:09] 10.1我也体会到了接口概念

本程序完全按照书的意思编写,我发现在在BBS上面有些人写出来的程序,已经违背了书上的题意,题意很明显,要让自己体会一下,对用户隐藏显存地址,他们只需要输入行数,列数及属性字节,就能达到他们的目的,我们要提供这样的一个接口,可是我发现有人在编写程序中用这三样作了立即数,倒,这样就不是接口那个概念了
        程序思想:一,先将行数,列数转换成相应的地址!将ES指向显存起初地址,DI偏移
                二,移动DS:SI指向的字符串到显存ES:DI,以0结束
assume cs:code
data segment
        db 'welcome to masm!',0
data ends
code segm...
阅读全文 | 评论次数(1) | 浏览次数(848) | 所属类型(个人心得)

[2008-04-30 10:04] 闲扯原码、反码、补码

闲扯原码、反码、补码

   相信大家看到这个标题都不屑一顾,因为在任何一本计算机基础知识书的第一章都有他们的解释,但是在书上我们只能找到一些简单的定义,没次看过之后不久就忘了。最近论坛里有人问起这些概念,看到很多人的回复是以前看过现在忘了去看看某某书之类,很少有给出一个合理的解释。于是本人就开始思考(虽然上帝会发笑,我还是要思考。),于是得出了以下的结论。


     数值在计算机中表示形式为机器数,计算机只能识别0和1,使用的是二进制,而在日常生活中人们使用的是十进制,"正如亚里士多德早就指出的那样,今天十进制的广泛采用,只不过我们绝大多数人生来具有10个手指头这个解剖学事实的...
阅读全文 | 评论次数(1) | 浏览次数(1551) | 所属类型(个人心得)

[2008-04-30 02:41] Jmp疑惑!!!

点击查看原图
在段内近转中,为什么会无缘无帮的增加一个nop,我经过多次反复论证,跟我定义的数据有关,
这一句,db 10 dup (0),当我改变循环次数的时候,机器指令有时会出现增加了多个Nop,一到三个不等,有时一个也不出会现,这个指令我在源代码中,并没有写!而在短转中,我改循环次数,并不会出现这种情况,在近转和段间跳转都会出现,很是疑惑,请高手指点!Nop这个指令我知道CPU什么也不作,但我想不通为什么机器码要插入这个!...
阅读全文 | 评论次数(7) | 浏览次数(1754) | 所属类型(教程中的疑问)

[2008-04-27 18:18] 实验七,两种方法完成

第一种方法:
assume cs:codesg
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 345980,590827,803530,118...
阅读全文 | 评论次数(2) | 浏览次数(663) | 所属类型(个人心得)

[2008-04-27 08:31] 学完王爽老师这本书,能否进入win32学习!

由于我的最终目的是为了学习win32汇编,但是为了打下一点基础,故来学习8086,不知道学完了王爽老师这本书,能否进入win32的学习,还请高手指点!或是提供一点学习方法...
阅读全文 | 评论次数(7) | 浏览次数(925) | 所属类型(教程中的疑问)

[2008-04-26 19:42] 第七章检测题,老是通过不了,唉...唉....唉,,,,,

第七章检测点
第一题:
生成EXE之后用Debug加载后,查看寄存器内容如下: 
    ds=0b2d es=0b2d ss=0b3d cs=0b3e ip=0000 
    程序的起始地址的段地址是_____。 
 1、 0b3e 
 2、 0b2d 
 3、 0b3d 
 4、 0
分析1,CS是指向程序的第一条指令!这道题我有点蒙,程序的起始地址到底是要程序的最前面的地址,包括PSP,还是指的第一条指令 ?还是包括声明在代码之前的数据在内?
分析2:用debug 加载后,我认DS是指向程序最头部,应该是选DS
分析3,分析1中已经提到!
我的答案是:2

...
阅读全文 | 评论次数(6) | 浏览次数(988) | 所属类型(检测点疑问)

[2008-04-25 19:35] 第六单检测点,疑雾重重!速请高手指点!

第一题:
在Intel8086环境下,下列说法合理的是_____。 
 1、 汇编语言程序载入内存后处于64K空间以外的数据和指令将无法使用和执行。 
 2、 一个数据段命名为data,此标号代表这个数据段在内存中的起始地址。 
 3、 如果载入的程序没有返回语句,那么当程序代码执行完毕,将继续读取后续内存空间 
    存储的指令到CPU内部作为指令执行下去,直到遇到返回指令为止。 
 4、 用DW和DD定义进行的数据,只能够以字为单位访问。 


分析过程:分析1,我认为不对,处于64K空内以外的数据,我们可以给出段地址与偏移地址去访问,所以1排除!
          分析2,也不...
阅读全文 | 评论次数(7) | 浏览次数(725) | 所属类型(检测点疑问)

[2008-04-21 16:22] 编译出错!请高手指点

点击查看原图
王爽的书里提到编译时出现这样的问题是源文件不存在的原因,可是我的源件是在的,而且跟编译器在同一个目录,我还试过了用绝对路径指定源文件编译,可是不行!不知道错在哪里,还望哪位朋友指点一下!...
阅读全文 | 评论次数(2) | 浏览次数(813) | 所属类型(教程中的疑问)

[2008-04-19 15:41] 为何不能这样寻址!请高手指点!(第三章检测点)

下列指令的书写正确的是:____ 
 1、 push al 
 2、 mov cs:[0],ds:[10] 
 3、 pop si 
 4、 mov ds:[0],2 
第一项肯定是错,栈只对字操作,
第2跟跟4为什么错的,我就想不通了,难道指令不支持这样寻址吗?
这不是段地址与偏移地址指向物理地址吗?...
阅读全文 | 评论次数(5) | 浏览次数(740) | 所属类型(检测点疑问)

[2008-04-18 02:15] 实验不符高字节放高位,低字节放低位?

点击查看原图
同时向内存修改 "abcd"
高字节是应该是从a 开始吧,d是最低的字节,d 理应放在最低地址.
实验结果却完全按照我输入顺序放在内存,疑问难消...
阅读全文 | 评论次数(4) | 浏览次数(720) | 所属类型(教程中的疑问)
『 查看更多文章 』