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

我的博客

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

[2011-09-26 12:23] 第二次学《汇编语言》时自身的思考

去年12月13日开始着手学习汇编的,还特地买了本书。刚开始冲劲很大,基本是一星期学两章。差不多到第10章时就开始极不认真了(前面也不认真,但至少思考了),翻开书看了一会感觉某点懂了就跳过,其实中间还有好多细节需要仔细阅读、实验的。就这样自我感觉一本书看完了,第17章也就看个目录,知道有那么回事而已。后来在应用中还是无法理解汇编,加上工作上也没什么地方非要用汇编,所以这段学习就停下来了。
这段时正好空闲,又拿起书来重新学习,花了两三天的时间看目录并反思怎么学习。反思后才坚定信心,这次一定要认真学完并写个串口程序。
这次反思中,觉得以前实验做得太少了,有许多东西都是感觉懂而没真正实现就跳过了—...
阅读全文 | 评论次数(1) | 浏览次数(619) | 所属类型(杂项)

[2010-12-27 13:47] 第5章 实验题

(2)
assume cs:codesg
codesg segment
  mov cx,40h
  mov bx,0020h
  mov ds,bx
  mov bx,0
s:mov [bx],al
  inc bl
  loop s

  mov ax,4c00h
  int 21h
codesg ends
end 

bx改为ax时就无法编译通过,不知道是为什么?...
阅读全文 | 评论次数(1) | 浏览次数(533) | 所属类型(汇编学习笔记)

[2010-12-23 12:01] 第4章 实验题

点击查看原图
用debug跟踪t1.exe的执行过程见图1-图6
图7是查看PSP中的内容,黄色圈中可见该部分包含了t1.exe的路径。...
阅读全文 | 评论次数(0) | 浏览次数(412) | 所属类型(汇编作业)

[2010-12-21 12:46] 第3章 检测题

检测题:
下列说法正确的是:__4__ 
 1、  数据段和代码段的段地址不能相同。 //对于CPU来说数据段与代码段都是二进制数。
 2、  指令mov ax,bx执行完后bx中的值为零。 
 3、  一个栈段的大小可以设为任意值。   //<=64K且是2的倍数,因为push、pop是字操作
 4、  当SP=0时,再次压栈将发生栈顶超界,但压栈操作有效。 //

下列指令的书写正确的是:__3__ 
 1、  push al  //push pop都是字操作
 2、  mov cs:[0],ds:[10] //没看懂
 3、  pop si //搜了一上:SI(Sou...
阅读全文 | 评论次数(0) | 浏览次数(465) | 所属类型(汇编学习笔记)

[2010-12-20 14:49] 第3章 记录

记录:
1.字的概念?与字节有和不同?
答:CPU中,用16位寄存器来存储一个字,由于内存单元是字节单元。则一个字要用两个地址连续的内存单元来存放,这个字的高8位存放于高位字节,低8位存放于低位字节,低位字节地址即字的地址。如10000H、10001H依次放在32H、46H则地址为10000H的1个字的内容是4632H。
一个字(16bit) = 两个字节(8bit)。


2.如何访问内存单元?
答:CPU在读写一个内存单元的时候先给出这个内存单元的地址,在8086PC中,内存地址也是由段地址和偏移地址组成。DS寄存器就是用来存入要访问内存单元的段地址。比如我们要读取10000...
阅读全文 | 评论次数(0) | 浏览次数(458) | 所属类型(汇编学习笔记)

[2010-12-20 14:47] 第3章 作业

检测点3.1
(1)        2662H
        E626H
        E626H

检测点3.2:
(1)        mov ax,2000H
        mov ss,ax
        mov sp,000eH
(2)        mov ax,1000H
        mov ss,ax
        mov sp,0000H

错误:检测点3.2:
(1)        mov ax,2000H
        mov ss,ax
        mov sp,000eH;这里应为mov sp,0010H,因为初始状态SS:SP应指向堆栈最底部单元的下面单元。当SS:SP指向栈内空间时,SS:SP所指单元是栈内最上面一个有数据的单元。SS:SP的指向问题还需要仔细思考一下。...
阅读全文 | 评论次数(0) | 浏览次数(427) | 所属类型(汇编作业)

[2010-12-19 10:20] 第二章部分检测题解释

一 下面关于8086CPU的工作原理描述错误的是 
1汇编程序员可以通过对各种寄存器中内容的修改实现对CPU的控制 
2CPU在访问内存时,采用“段地址*16+偏移地址”的形式给出要访问的内存单元的物理地址 
3任意时刻,CS:IP指向的内容即是此刻CPU正在执行的指令 
4传送指令能够更改所有通用寄存器的内容 

答案:3
* 书的26而图2.10可以看到CPU当前正在执行的指令是放在指令缓冲器中的,所以3错误。


二 下列说法正确的是 
1 8086CPU采用“段地址*16+偏移地址=物理地址”的寻址模式,所以内存是由一个一个的段组

成,每一个段有一个段地址 ...
阅读全文 | 评论次数(0) | 浏览次数(463) | 所属类型(汇编学习笔记)

[2010-12-16 16:57] 备份_读《大道至简》

语录
1.编程作为一种行为,只需要知道其逻辑方法就可以了。所谓编程实际上是把一件事情交给计算机去做,你认为这件事该如何做,就用“程序语言”的形式描述给计算机。如果你原本就不明白如何去做,那么你也不要期望计算机去理解你想要做什么。
  “程序 = 算法 + 结构”,代码是不存在的。算法是对一个程序的逻辑实现的描述,而结构是逻辑实现所依附的数据实体。
    算法有且公有三种执行逻辑:顺序、分支和循环。
2.人的精力终归是有极限的。
    愚公可以多吃点饭,多加点班,但突破不了人的精力的极限。
3.组织模式确定的同时,相应的制度也有随之建立。很少是有几年之后才来补制度的。
然而制度...
阅读全文 | 评论次数(0) | 浏览次数(429) | 所属类型(杂项)

[2010-12-16 09:02] 第1、2章 记录

第1章

记录:CPU控制外设时,把它们都当作内存来对待,把它们总的看作一个由若干存储单元组成的逻辑存储器,这个逻辑存储器就是我们所说的内在地址空间(这是一个假想的),对于CPU来说所有外设都是黑匣子.


第2章
记录1:        1.对AL操作不会影响AH,例如AX = 1023H,执行mov al,00H后AX的内容是1000H。
        2.mov al,02h
          add al,al
        执行上述命令后al = 04h

记录2:
1.8086CPU有4个段寄存器:CS、DS、SS、ES,在CPU访问内在时由这4个段寄存器提供内在单元的段地址。
2.CS为代码段寄存器。 ...
阅读全文 | 评论次数(0) | 浏览次数(439) | 所属类型(汇编学习笔记)

[2010-12-16 08:25] 第二章 作业

检测点2.1
(1)        
(2)         2^4 = 2*2*2*2
        mov al,02h
        add al,al    ;2*2 = 4
        add al,al    ;4+4 = 4*2 = 2*2*2 = 8
        add al,al    ;8+8 = 8*2 = 2*2*2*2 = 16

检测点2.2
(1)        00010H-1000FH
(2)        1001H        2000H

检测点2.3
CPU经过4次修改IP;
mov ax,bx后1次
sub ax,ax后1次
jmp ax :将ax内容写入IP时次
        CPU根据IP值执行命令后1次

IP值不清楚....
阅读全文 | 评论次数(0) | 浏览次数(392) | 所属类型(汇编作业)
『 查看更多文章 』