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

我的博客

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

[2008-02-18 23:17] 十一章  体会

本章难度较大,
有比较麻烦的逻辑问题,
不过,我觉得更难的在于熟练掌握那些标志位的状况。
思考的成分不算太多,学习的时候,还是先背下来再说,
逻辑问题可以放到后面慢慢思考。
本章可是新内容最多的一章了。

呵呵,刚通过检测,睡觉去了。
祝大家都做个好梦!^_^...
阅读全文 | 评论次数(3) | 浏览次数(666) | 所属类型(学习笔记)

[2008-02-18 12:23] 第十章 检测点

可惜,没通过,
我认为是这道题错了

下列哪条指令不能够使CS:IP指向当前内存段范围内以s为标号的代码段______。  
 1、 jmp near ptr s  
 2、 jmp far ptr s  
 3、 call near ptr s  
 4、 call word ptr s 

我开始只考虑了 jmp far ptr s 是段间转移用的,所以选2。
实际上是错的,
因为,jmp far ptr s的原理是
(我感觉的,没有在书上找到)
计算jmp和标号的物理位移,
因为是far转移,所以这个偏移可以超过64k,
但不必须大于64k,
所以,far...
阅读全文 | 评论次数(8) | 浏览次数(694) | 所属类型(学习笔记)

[2008-02-18 11:27] 推荐博文 作课程设计1的感想

首先介绍一下我学习的情况,
应用计算机已经很多年了,但初学计算机编程,
13号开始学,中间因为过年,杂乱事情比较多,也有耽误。
但进度还是比较快,结果如何呢?
就像前边有朋友评价我的“我认为,不是什么东西都要问的 
博主每一个帖子都有疑问,不是什么好的现象 
或许再多思考一下,就能够自己得出正确合理的解答的”
虽然都学过了,但疑问很多,
如果是细细的遍历一遍,想博文推荐里的朋友那样,
我想结果会好很多,
不过,受条件所限,也只好尽力而为之了。

前边学习都还比较顺利,
因为不深究其原因,以通过为目的,
倒也糊弄过去了,
但在这个课程设计上载了大跟头,
费时近一天...
阅读全文 | 评论次数(2) | 浏览次数(683) | 所属类型(学习笔记)

[2008-02-16 18:57] 实验 8

这个实验主要是注意
jmp short s1 的真实含义,
即,源程序中这样的代码已经被编译,
形成了固定的跳转代码语句,
所以当它被写到s:nop处时,
含义仍是向前跳转固定的字节,
这样就可以结束程序了。...
阅读全文 | 评论次数(1) | 浏览次数(461) | 所属类型(学习笔记)

[2008-02-16 10:55] 问题 7.9

做个记录:

1.
assume cs:code,ss:stack,ds:data

stack segment
   dw 0,0,0,0,0,0,0,0
stack ends

data segment
   
   db '1. display      '   
   db '2. brows        '
   db '3. replace      '
   db '4. modify       '

data ends

code segment

  start: mov ax,data
         mov ds,ax
 ...
阅读全文 | 评论次数(0) | 浏览次数(324) | 所属类型(学习笔记)

[2008-02-15 11:08] 程序 5.6的疑问

我写的程序如下:
assume cs:code
code    segment
     mov ax,0ffffh
     mov ds,ax
     sub ax,ax
     sub dx,dx
     sub bx,bx
     mov cx,12
 s:  mov al,ds:[bx]
     inc bx
     add dx,ax
     loop s
     
     mov ax,4c00h
     int 21h
code ends
end


和书上的区别就是,
书中每一步的循环都把ah清零,
而我觉得因为...
阅读全文 | 评论次数(2) | 浏览次数(335) | 所属类型(学习笔记)

[2008-02-15 10:41] 程序5.4

这个就是试了试这个修改
assume cs:u
u    segment
     mov ax,0ffffh
     mov ds,ax
     mov bx,6
     mov al,[bx]
     mov ah,0
     mov dx,0
     mov cx,123
  w: add dx,ax
     loop w

     mov ax,4c00h
     int 21h
u ends
end

如上,段名和 loop s中的s,都可以自己设置。...
阅读全文 | 评论次数(2) | 浏览次数(329) | 所属类型(学习笔记)

[2008-02-15 00:45] Chapter 4

实验部分,

没啥问题,只是要注意逻辑错误和语法错误的区分。...
阅读全文 | 评论次数(0) | 浏览次数(407) | 所属类型(学习笔记)

[2008-02-14 23:40] 实验2 2.2

关于 2000:0-2000:f中内容变化,

观察可知,至少是 cs ip中的内容被写进栈去了,
根据书上 68 69 70页 实验2.1的内容,
在Debug下 T命令写入 mov ss,ax的时候,
mov sp,10的内容是自动写入的,
这里有中断机制,
估计这个内容变化也与中断机制有关。...
阅读全文 | 评论次数(4) | 浏览次数(399) | 所属类型(学习笔记)

[2008-02-14 21:09] 问题 3.11

就是栈的长度10000-1ffff,
设ss=1000,那么栈空时,sp=?

这个如果从内存空间来看,
由于00000-fffff是连续的一维线型空间,
所以,在10000-1ffff的栈空间上,
ss+sp应当取 10000-20000,
但这样取值已经超过64K,已经超过段的最大长度了,
在这里就有一个问题,
实际上,在栈运算中,ss是不变的,只有sp变化,
而sp作为16位寄存器,有一个特性(?),
就是当运算超过16位时,舍高位取低位,
即 sp=ffff,则sp+1=0,
sp指向栈的最低位,
在这里,栈开始一种循环了,
因为此时 push,sp=sp...
阅读全文 | 评论次数(1) | 浏览次数(301) | 所属类型(学习笔记)
页码数(2):  1  2