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

我的博客

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

[2009-08-19 09:52] 检测点10.5

(1)下面的程序执行后,ax中的数值为多少?
assume cs:code
stack segment
    dw 8 dup(0)
stack ends
code segment
start:mov ax,stack           ;ip=0
      mov ss,ax              ;ip=3
      mov sp,16              ;ip=5
      mov ds,ax              ;ip=8
      mov ax,0               ;ip=10
      call word ptr d...
阅读全文 | 评论次数(1) | 浏览次数(349) | 所属类型(汇编作业)

[2009-08-19 04:48] 检测点10.4

下面的程序执行后,ax中的数值为多少?
  内存地址      机器码       汇编指令
 1000:0      b8 00 00    mov ax,6
 1000:2       ff d0      call ax     ;push 5
                                     ;跳转到1000:6指向的
                                          ;代码
 1000:5       40        inc ax
 1000:6                 mov bp,sp   ;bp...
阅读全文 | 评论次数(3) | 浏览次数(236) | 所属类型(汇编作业)

[2009-08-19 03:54] 检测点10.3

下面的程序执行后,ax中的数值为多少?
 内存地址      机器码               汇编指令
1000:0      b8 00 00           mov ax,0
1000:3       9a 09 00 00 10     call far ptr s
1000:8       40                 inc ax
1000:9       58               s:pop ax     ;ax=3h
                                add ax,ax  ;ax=6h
             ...
阅读全文 | 评论次数(2) | 浏览次数(302) | 所属类型(汇编作业)

[2009-08-19 03:40] 检测点10.2

下面的程序执行后,ax中的数值为多少?
内存地址       机器码        汇编指令
1000:0     b8 00 00     mov ax,0
1000: 3     e8 01 00     call s
1000: 6     40           inc ax
1000: 7     58         s:pop ax

回答:因为call执行后先把ip压入栈,执行后ax的数值是3...
阅读全文 | 评论次数(3) | 浏览次数(267) | 所属类型(汇编作业)

[2009-08-18 17:43] 检测点10.1

补全程序,实现从内存1000:0000处开始执行指令
assume cs:code
stack segment
   db 16 dup (0)
stack ends
 code segment
start:mov ax,stack
      mov ss,ax
      mov sp,16
      mov ax,1000H  ;填空处,retf执行以后1000h为cs地址
      push ax
      mov ax,0000H  ;填空处,retf执行以后0000为ip地址
      push ax
      retf
code ends
...
阅读全文 | 评论次数(2) | 浏览次数(310) | 所属类型(汇编作业)

[2009-08-18 10:50] 检测点9.3

补全编程,利用loop指令,实现在内存2000h段中查找第一个值为0的byte,找到后,将它的偏移地址存储在dx中

assume cs:code
  code segment
start: mov ax,2000h
       mov ds,ax
       mov bx,0
     s:mov cl,[bx]
       mov ch,0
       inc cx       ;填空处
       inc bx
       loop s
    ok:dec bx
       mov ax,4c00h
       int 21h
code e...
阅读全文 | 评论次数(2) | 浏览次数(242) | 所属类型(汇编作业)

[2009-08-18 10:10] 检测9.2

补全编程,利用jcxz指令,实现在内存2000h段中查找第一个值为0的字节,找到后,将它的偏移地址存储在dx中。
assume cs:code
  code segment
 start:mov ax,2000h
       mov ds,ax
       mov bx,0
    s: mov cx,[bx] ;填空处,2000h:bx的值赋给cx
       jcxz ok     ;填空处,判断cx是否等于0,等于0则跳转到ok
       add bx,1    ;填空处,如果cx不等于0,bx+1
       jmp short s ;跳转到s,将2000...
阅读全文 | 评论次数(2) | 浏览次数(297) | 所属类型(汇编作业)

[2009-08-18 09:08] 检测点9.1

(1)程序如下:
assume cs:code
data segment
?
data ends
code segment
start:mov ax,data
      mov ds,ax
      mov bx,0
      jmp word prt [bx+1]
code ends
end start

若要使程序中的jmp指令执行后,CS:IP指向程序的第一条指令,在data段中应该定义哪些数据?
回答:
该程序没有返回指令,无论在填空处补充什么指令都有逻辑错误;
jmp word prt [bx+1]表示将ip指向data段中从第2个单元开始的字单...
阅读全文 | 评论次数(3) | 浏览次数(491) | 所属类型(汇编作业)

[2009-08-15 11:12] 检测点6.1

(1)下面的程序实现依次用内存0:0-0:15中的内容改写程序中的数据,完成程序:
assume cs:codesg
codesg segment
    dw 0123H,0456H,0789H,0ABCH,0DEFH,0FEDH,0CBAH,987H
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,4c0...
阅读全文 | 评论次数(3) | 浏览次数(286) | 所属类型(汇编作业)

[2009-08-14 00:29] 检测点3.2

(1)补全下面的程序,使其可以将10000H-1000FH中的8个字,逆序拷贝到20000H-2000FH中,逆序拷贝的含义如图3.17所示:
mov ax,1000H
mov ds,ax
mov ax,2000H  ;填空处
mov ss,ax     ;填空处
mov sp,10h    ;填空处
push [0]
push [2]
push [4]
push [6]
push [8]
push [A]
push [C]
push [E]

(2)补全下面的程序,使其可以将10000H-1000FH中的8个字,逆序拷贝到20000H-2000FH中。
mov...
阅读全文 | 评论次数(2) | 浏览次数(242) | 所属类型(汇编作业)
『 查看更多文章 』