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

我的博客

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

[2009-12-07 22:03] 实验五  编写,调试具有多个段的程序

(1)
1)  cpu执行程序,程序返回前,data段中的数据为多少?
答:不变
2) cpu执行程序,程序返回前,cs = code  ss = stack ds=data
3)code = X  则:data = X- 2 stack = X- 1;
(2)
觉得和第一题一样
第三问:name segment
       ...
       name ends
    如果段中的数据占N个字节,程序加载后,该段实际占用的空间为最接近N的16 的倍数个字节
(3)
前两问一样;
第三问:须计算code的长度:
(4)
把end start  改为end 程序...
阅读全文 | 评论次数(0) | 浏览次数(615) | 所属类型(汇编作业)

[2009-12-07 21:30] 检测点6.1

原题有点长,不想敲了,只把自己的答案写出来了
(1)
      mov cs:[bx],ax
(2)
     (1)mov ax,cs
     (2)mov sp,20H
     (3)pop cs:[bx]...
阅读全文 | 评论次数(0) | 浏览次数(686) | 所属类型(汇编作业)

[2009-12-07 21:25] 实验四  【bx】和loop的使用(3)

复制mov ax,4c00H前面的指令到指定内存单元处
关键步骤:
(1)寻找第一条指令的地址,因为每次程序都从cs:ip处开始执行,说以: mov ax,cs
    mov ds,ax   设置复制原段地址
(2)确定循环次数,我是经过查每一条汇编指令长度确定的。
     mov cx,0019H

问题:
实在没想出来更好的确定长度的方法。...
阅读全文 | 评论次数(0) | 浏览次数(666) | 所属类型(汇编作业)

[2009-12-06 20:56] 实验四  【bx】和loop的使用(1)(2)

(1)(2)编程 向内存0:200~0:23F依次传送数据0~3FH。

assume cs:code 
code segment

   mov ax,0020H
   mov ds,ax
   mov bx,0000H
   mov cx,40H

s: mov [bx],bl
   inc bl
   loop s

mov ax,4C00H
int 21H

code ends
end...
阅读全文 | 评论次数(1) | 浏览次数(888) | 所属类型(汇编作业)

[2009-12-06 20:10] 实验三 编程、编译、连接、跟踪

(1)(2)

assume cs:code
code segment

mov ax,2000H           AX = 2000H
mov ss,ax              SS = 2000H
mov sp,0               SP = 0000H
add sp,10H             SP = 0010H
pop ax                 AX = 6620H    SP = 0012H
pop bx                 BX = 6C69H    SP = 0014H
push ax             ...
阅读全文 | 评论次数(1) | 浏览次数(895) | 所属类型(汇编作业)

[2009-12-05 20:08] 栈中数据自己变了

实验二第二题
为什么栈中的数据没修改,自己就变了呢?难道是暂存了别的数据?...
阅读全文 | 评论次数(3) | 浏览次数(937) | 所属类型(疑问???)

[2009-12-05 20:02] 实验二

1.填空
mov ax,ffffH
mov ds,ax

mov ax,2200H
mov ss,ax
mov sp,0100H

mov ax,[0]    ax = E8EAH
add ax,[2]    ax = E9E9H
mov bx,[4]    bx = 30F0H
add bx,[6]    bx = 6022H

push ax       sp = 00FEH; 
              修改的内存单元地址是220FEH,内容为E9E9H
push bx       sp = 00FCH;
              修改的内存单元地址是...
阅读全文 | 评论次数(0) | 浏览次数(624) | 所属类型(汇编作业)

[2009-12-05 19:24] 检测点3.2 (2)

逆序复制(字单元):
10000H ~ 1000FH  --> 20000H ~ 2000FH

mov ax,2000H
mov ds,ax
 mov ax,1000H
 mov ss,ax             设置工作栈
 mov sp,0000H
pop [E]
pop [C]
pop [A]
pop [8]
pop [6]
pop [4]
pop [2]
pop [0]

算法同第一题只不过是栈设置在了原内存空间。...
阅读全文 | 评论次数(1) | 浏览次数(857) | 所属类型(汇编作业)

[2009-12-05 19:17] 检测点3.2 (1)

逆序复制(字单元):
10000H ~ 1000FH  --->20000H ~ 2000FH

mov ax,1000H
mov ds,ax 
 mov ax,2000H
 mov ss,ax         设置栈    
 mov sp,0010H
push [0]
push [2]
push [4]
push [6]
push [8]
push [A]
push [C]
push [E]

先设置栈,然后进行一系列入栈操作。...
阅读全文 | 评论次数(1) | 浏览次数(908) | 所属类型(汇编作业)

[2009-12-05 19:04] 检测点3.1  (2)

各寄存器初始值:
CS = 2000H IP = 0000H DS = 1000H AX = 0000H,BX =0000H
写出CPU执行的指令序列即相关寄存器的变化:

  分析:cpu应由 2000:0000处开始执行具体过程:
   (1) mov ax,6622H     ax = 2662H  IP = 0003H
   (2) jmp 0ff0:0100    cs = 2000H, IP = 0008H -> 
                        cs = 0ff0H, IP = 0100H  相当于:
                       ...
阅读全文 | 评论次数(1) | 浏览次数(888) | 所属类型(汇编作业)
『 查看更多文章 』