汇编网首页登录博客注册
十堰职业技术学院学生211020的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

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

[2009-06-11 22:51] 检测点16.1

下面的程序将code段中a处的8个数据累加,结果存储到b处的双字节中,补全程序。
 Assume cs:code
 Code segment
       a dw 1,2,3,4,5,6,7,8
       b dd 0
start: mov si,0
     mov cx,8
   s: mov ax, a[si]    空
     add  a[16], ,ax  空
     adc  a[18],0    空
     add si, 2        空
     loop s
     mov ax,4c00h
     int 21h
code...
阅读全文 | 评论次数(1) | 浏览次数(445) | 所属类型(默认类型)

[2009-06-11 22:31] 检测点12.1

(1)
用Debug查看内存,情况如下:
0000:0000 68 10 A7 00 88 01 70 00 —16 00 9D 03 8B 01 70 00
则3号中断 为:

(2)
存储N号中断源对应的中断处理程序入口的偏移地址的内存单元的地址为:
存储N号中断源对应的中断处理程序入口的段地址的内存单元的地址为:
(1)3号中断源对应的中断处理程序的入口地址为:0070:018B
(高地址存放段地址,低地址存放偏移地址) 
(2)4N       4N+2...
阅读全文 | 评论次数(1) | 浏览次数(487) | 所属类型(默认类型)

[2009-06-09 17:46] 检测点6.1

检测点6.1 
 (1)下面的程序实现依次用内存0:0-0:15单元中的内容改写程序中的数据 
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 
       m...
阅读全文 | 评论次数(0) | 浏览次数(321) | 所属类型(默认类型)

[2009-06-08 21:18] 检测点9.1

(1) 若要使程序中的 jmp 指令执行后, CS:IP 指向程序的第一条指令, 在 data 段中应该定义哪些数据? 
程序如下: 
assume cs:code  
data segment  
   dw 0 
data ends  

code segment  
start:  
    mov ax, data  
    mov ds, ax  
    mov bx, 0  
    jmp word ptr [bx+1]  
code ends  
end start 
(2)补全程序, 使 jmp 指令执行后, CS:IP 指向程序的第一条指令...
阅读全文 | 评论次数(1) | 浏览次数(473) | 所属类型(默认类型)

[2009-06-07 22:13] 实验12

第十二章:0号中断的处理程序,使得在除法溢出发生时,在屏幕中间显示字符”divide error”然后返回到dos.
assume cs:code
code segment

start:
    mov ax,cs
    mov ds,ax
    mov si,offset do0         ;设置ds:si指向源地址

    mov ax,0
    mov es,ax
    mov di,200h       ;设置es:di指向目的地址

    mov cx,offset do0end-offset do0
    cld     ;设置传输...
阅读全文 | 评论次数(1) | 浏览次数(439) | 所属类型(默认类型)

[2009-06-07 22:12] 检测点13.1

检测点13.1
(1)在上面的内容中,我们用7ch中断例程实现loop的功能,则上面的7ch中断例程所能进行的最大转移位移是多少?
转移位移有向前位移和向后位移 
因此转移位移要用带符号数表示 
8位位移的范围 -128到127 
16位位移的范围 -32768到32767 
例程中向前最大位移32768 
     向后最大位移32767

(2)用7ch中断例程完成jmp near ptrs 指令的功能,用bx向中断例程传送转移位移。

ssume cs:code 
data segment  
    db 'conversation',0 
data end...
阅读全文 | 评论次数(2) | 浏览次数(481) | 所属类型(默认类型)

[2009-05-22 07:34] 习题11.4  2007211020

检测点11.4
下面的程序执行后:(ax)=?
Mov ax,0
Push ax
Popf
Mov ax,0fff0h
Add ax,0010h
Pushf
Pop ax
And al,11000101B
And ah,00001000B
分析
Add ax,1110h后
 Ax=10000h,则 CF=1,ZF=1,PF=1
 Pushf后 flag高位为0,低位根据下面的表为01000101b
 And al,11000101B执行后 al=01000101b+11000101B=01000101=45h
 And ah,00001000B执行后ah=000...
阅读全文 | 评论次数(2) | 浏览次数(474) | 所属类型(默认类型)

[2009-05-22 07:33] 习题11.3 2007211020

检测点11.3
(1)        补全下面的程序,统计F000:0-处32个字节中,大小在[32,128]的数据的个数.
Mov ax,0f000h
Mov ds,ax
Mov bx,0
Mov dx,0
Mov cx,32
 S: mov al,[bx]
   Cmp al,32
 
   jb so
   Cmp al,128
   ja so                

   Inc dx
 S0: inc bx
Loop s

(2)        补全下面的程序,统计F000:0-处32个字节中,大小在(32,128)的数据的个数.
   
 Mov ax,0f...
阅读全文 | 评论次数(3) | 浏览次数(462) | 所属类型(默认类型)

[2009-05-14 21:48] 07211020检测点11.2

检测点
11.2 写出下面每条指令执行后,ZF,PF,SF,CF,OF等标志位的值,.
Sub al ,al     cf=  0    of=    0  sf= 0     zf=  1     pf=1
Mov al,10h     cf=  0   of=    0  sf= 0    zf=   1   pf=1
Add al ,90h    cf=  0   of=   0  sf=  1   zf=    0    pf=1
Mov al,80h     cf=  0  of=    0 sf=  1    zf=    0    pf=1
Add al ,80h  ...
阅读全文 | 评论次数(4) | 浏览次数(363) | 所属类型(默认类型)

[2009-05-10 16:21] 检测点10.1-5

检测点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,
       push ax
       mov ax,
       push ax
       reft f
 code ends
 end start
分析:Mov ax,1000h:把段地址压入栈
...
阅读全文 | 评论次数(2) | 浏览次数(165) | 所属类型(默认类型)
页码数(2):  1  2