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

我的博客

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

[2009-11-26 21:35] 实验6

assume cs:codesg,ss:stacksg,ds:datasg


stacksg segment

        dw 0,0,0,0,0,0,0,0

stacksg ends


datasg segment

        db '1. display      '

        db '2. brows        '

        db '3. replace      '

        db '4. modify       '

datasg ends


codesg segment

start...
阅读全文 | 评论次数(0) | 浏览次数(533) | 所属类型(汇编作业)

[2009-11-25 18:07] 实验5 编写、调试具有多个段的程序

(1) 
①.保持不变 

②.cs=1416h,ss=1415h,ds=1414h 

③.X-2,X-1 

(2) 

1.保持不变 

2.cs=1416,ss=1415,ds=1414 

3.X-2,X-1 

4.N+16(字节) 
  

(3) 

1.保持不变 

2.cs=1414,ss=1418,ds=1417
3.X+3,X+4 

  
(4) 
答:第3个仍然可以正确执行。因为如果把end指令后的标号start去掉后,编译器便会自动以'从上向下'的顺序进行编译执行源程序。 
  

(5)完整程序如下: ...
阅读全文 | 评论次数(0) | 浏览次数(493) | 所属类型(汇编作业)

[2009-11-25 16: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 21h 

codesg ends ...
阅读全文 | 评论次数(0) | 浏览次数(479) | 所属类型(汇编作业)

[2009-11-25 02:19] 第6章汇编测试题目

在Intel8086环境下,下列说法合理的是___。  
 1、  汇编语言程序载入内存后处于64K空间以外的数据和指令将无法使用和执行。 
显然错误。 
 2、  一个数据段命名为data,此标号代表这个数据段在内存中的起始地址。
应该是段基址吧。  
 3、  如果载入的程序没有返回语句,那么当程序代码执行完毕,将继续读取后续内存空间存储的指令到CPU内部作为指令执行下去,直到遇到返回指令为止。
需要用返回语句告诉cpu在哪里返回,所以这个正确。  
 4、  用DW和DD定义进行的数据,只能够以字为单位访问。
可以以字节进行访问。
答案③。  


   

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

[2009-11-24 23:55] 实验4 [BX]和loop的使用

点击查看原图
(1) 编程,向内存0:200~0:23F依次传送数据0~63(3FH)。 
程序如下: 

assume cs:codesg 
codesg segment 

     mov ax,0020h 
     mov ds,ax 
     mov bx,0 
     mov dl,0 
     mov cx,40h 

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

     mov ax,4c00h 
     int 21h 
codesg ends 
end 

 (2...
阅读全文 | 评论次数(0) | 浏览次数(530) | 所属类型(汇编作业)

[2009-11-24 11:26] 实验二

点击查看原图
2.实验任务

(1)使用Debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。 
 
ax=5BEAH 
ax=5CCAH 
bx=30F0H 
bx=6025H 

sp=00FEH   220FEH 5CCAH 
sp=00FCH   220FCH 6025H 
sp=00FEH   6025H 
sp=0100H   5CCAH 

sp=00FEH   220FEH 30F0H 
sp=00FCH   220FCH 2F35H 

(2)仔细观察图3.19的实验过程,然后分析:为什么2000:0~2000:f中的内容会发生改...
阅读全文 | 评论次数(1) | 浏览次数(673) | 所属类型(汇编作业)

[2009-11-24 10:59] 检测点3.2

(1) 
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] 

(2) 
mov ax,2000h 
mov ds,ax 

mov ax,1000h 
mov ss,bx 
mov sp,0h

pop [e] 
pop [c] 
pop [a] 
pop [8] 
pop [6]...
阅读全文 | 评论次数(0) | 浏览次数(484) | 所属类型(汇编作业)

[2009-11-24 10:53] 检测点3.1

(1)
 
AX=2662H  
BX=E626H  
AX=E626H  
AX=2662H  
BX=D6E6H  
AX=FD48H  
AX=2C14H  
AX=0000H  
AX=00E6H  
BX=0000H  
BX=0026H  
AX=000CH  

(2)
①②初始的值cs=2000h ip=0000h ds=1000h ax=0h bx=0h 
SA=CS*16+IP=20000h  
指令序列及CPU执行每条指令后,CS、IP和相关寄存器中的数值。 
1 mov ax,6622h 
cs=2000h ip=0003h ds...
阅读全文 | 评论次数(0) | 浏览次数(451) | 所属类型(汇编作业)

[2009-11-24 00:24] 实验一

点击查看原图
实验任务
1) 
由于只能上传一张图片所以只能列出部分了

(2) 


(3) 
通过DEBUG中的D命令查看到主板的生产日期[以月、日、年,分隔符为'/'的格式]

d ffff:0005~ffff:000C

此生产日期不能被改变,因为其在ROM中。只读不能修改。 

(4)因为A0000H~BFFFFH是显存地址空间,所以在B810:0000 
写数据,使计算机根据写入的数据进行ASCII转换,并将转换后且可打印的字符输出到屏幕上。可以观察屏幕右上方,有图形显示。...
阅读全文 | 评论次数(0) | 浏览次数(228) | 所属类型(汇编作业)

[2009-11-24 00:00] 检测点2.3

下面的3条指令执行后,CPU几次修改IP?都是什么时候?最后IP中的的值是多少? 

解析:mov ax,bx  ; IP=IP+2  FIRST
    sub ax,ax  ; IP=IP+2  SECOND
    jmp ax   ;首先IP=IP+2  后IP=AX  这里就修改了两次

修改了4次,前两条指令在读取完成以后就会修改IP来指向下一条指令,最后一条指令是跳转指令,除读取完修改IP外,执行完指令还要修改IP(即将ax赋给IP)用来跳转. 
跳转指令有两次IP修改
最后IP中的值为ax的值,为0...
阅读全文 | 评论次数(0) | 浏览次数(242) | 所属类型(汇编作业)
页码数(2):  1  2