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

我的博客

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

[2009-11-11 08:15] [实验5]-1(p123)编写,调试具有多个段的程序

①CPU执行程序,程序返回前,data段中的数据不发生变化。
②CPU执行程序,程序返回前,cs=[code],ss=[stack],ds=[data]
③设程序加载后,code段的段地址为X,则data段的地址为X-2,stack段的地址为X-1
======
我的问题:
1. 第③问中,如果data段的长度超过64K,是不是就不存在上述的关系了(X-1,X-2)?
2. 同样第③问中,操作系统为每一段都寻找一段合适的空间,code段,data段,stack段,一定会连续在一起么?...
阅读全文 | 评论次数(0) | 浏览次数(659) | 所属类型(汇编教材 试验)

[2009-11-04 08:42] 检测点 6.1-(1)

assume cs:codesg
codesg segment
    dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
start: mov ax,0
        mov ds,ax
        mov bx,0
        mov cx,8
      s:mov ax,[bx]
        mov cs:[bx],ax
        ---------------
        add bx,2
        loop s
        mov ax, 4c00h
        int...
阅读全文 | 评论次数(0) | 浏览次数(608) | 所属类型(汇编教材 检测点)

[2009-11-04 08:03] [实验4] [bx]和loop的使用-2

[题目要求]编程,向内存0:200-0:23F依次传送数据0~63(3FH),程序中只能使用9条指令,9条指令中包括“mov ax,4c00h”和 “int 21h”。
程序如下,请指教。

assume cs:cscode
cscode segment
  mov ax,20H
  mov ds,ax
  mov bx,0
  mov cx,64
s:mov [bx],bx
  inc bx
  loop s
  mov ax,4c00h
  int 21h
cscode ends
end...
阅读全文 | 评论次数(0) | 浏览次数(660) | 所属类型(汇编教材 试验)

[2009-10-23 08:19] 可以使用ES来存放数据段的段地址

P113页,程序5.9中,设置了两个数据段地址,DS和ES。
ES也可以用来存放数据段地址,类似于DS的功能。但要在源程序中显式滴使用。...
阅读全文 | 评论次数(0) | 浏览次数(576) | 所属类型(读书笔记)

[2009-10-23 07:57] 利用bx作为循环变量

mov al,[bx]
inc bx ;bx自然增加1

bx作为内存地址的变量,利用inc bx改变bx的值,从而达到循环变量的目的。

之前好像看过一篇文章,只有bx可以做这个用途来使用。其他的寄存器都不可以。

好像如此。。。。暂记。...
阅读全文 | 评论次数(0) | 浏览次数(521) | 所属类型(读书笔记)

[2009-10-22 08:27] 编译器masm将mov ax,[0] 编译为 mov ax,0

这是写源程序是要注意的。
根据P104页提示,可以将数据段显式设置,即可达到目的
即写源程序时,写 mov,ax ds:[0]....
阅读全文 | 评论次数(0) | 浏览次数(595) | 所属类型(读书笔记)

[2009-10-22 07:52] 汇编源程序中,数据不能以字母开头

汇编语言第二版P97页,
汇编源程序中,大于9fffH的数据,在源程序中出现的时候,应在其前加0
例如,mov ax,A001H  是错误的。
应写为mov ax,0A001H。...
阅读全文 | 评论次数(0) | 浏览次数(618) | 所属类型(读书笔记)

[2009-04-15 09:40] 汇编教材 检测点 3.1(P55-56)

(2)
CS=2000H,IP=0
第一句要执行的是:
mov ax,6622H    CS=2000H,IP=0003H
jmp 0ff0:0100     CS=0ff0H,IP=0100,从10000H处读取指令
mov ax,2000H    CS=0ff0H,IP=0103H
mov ds,ax         CS=0ff0H,IP=0105H,DS指向2000H段开始的数据
mov ax,[0008]   CS=0ff0H,IP=0108H,将20008H处的字数据(C389)放入ax。此时,C389是数据,而不是原来的mov bx,ax这行程序
mov ax,[...
阅读全文 | 评论次数(0) | 浏览次数(544) | 所属类型(汇编教材 检测点)

[2009-04-14 08:07] 汇编教材 检测点 3.1(P55)

(1)
DS=0001
则数据段地址为0010
注意用[...]的格式给AX,BX,al,bl赋值的时候,分别是按照字,字,字节,字节的方式赋值的,注意长度。

AX=6226
BX=26E6
AX=26E6
AX=6226
BX=E6D6
AX=6226+E6D6=48FC
AX=48FC+CC2E=152A
AX=0
AX=0026
BX=0
BX=0026
AX=0026+0026=004C...
阅读全文 | 评论次数(2) | 浏览次数(843) | 所属类型(汇编教材 检测点)

[2009-04-13 16:48] mov,add 之不能

不能 mov 地址,地址;如mov [0],[10],ERROR
不能 add ds,ax(p53),但可以 mov ds,ax...
阅读全文 | 评论次数(1) | 浏览次数(883) | 所属类型(读书笔记)
『 查看更多文章 』