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

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
  •  此情可待成追忆 只是当时已惘然
  • 『姓名』:流浪鱼              
  • 『性别』:保密  『发送消息
  • 个人说明:伟大航路
  • 详细信息『加为好友』
学习动态
最新留言
文章收藏
友情链接

[2008-06-20 09:43] 第十七章检测题

1.把键盘的扫描码读入并将其转化成ASCⅡ码或状态信息,存储在内存的指定位置的中断例程是___3___。 
 1、 int 16h 
 2、 int 21h 
 3、 int 9h 
 4、 int 10h 

2.提供读取键盘缓冲区功能的BIOS中断例程是__4___。 
 1、 int 9h 
 2、 int 21h 
 3、 int 10h 
 4、 int 16h 

3.当有键按下时,将按键的___3____依次存储在键盘缓冲区中。 
 1、 通码和断码 
 2、 通码和扫描码 
 3、 通码和ASCII码 
 4、 断码和ASCII码 

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

[2008-06-10 21:59] 第16章检测题

1.将标号a处的8个数累加的和放到标号b处所在的单元中,下面选项中的程序正确的是___4___。 
 1、 assume cs:code 
    code segment 
    mov si,0 
    mov cx,8 
    s: add b,a[si] 
    inc si 
    loop s 
    mov ax,4c00h 
    int 21h 
    a db 1,2,3,4,5,6,7,8 
    b db 0 
    code ends 
    end 
 2、 assume cs:code,ds:data 
    ...
阅读全文 | 评论次数(1) | 浏览次数(1220) | 所属类型(汇编作业)

[2008-06-10 21:18] 检测点17.1及书上一段程序的分析

检测点17.1
这种说法是对的,因为在int 16h的中断例程中,我们需要来自键盘的信息。进入了int 16h中断后,IF=0一直下去,那么从键盘来的中断int 9h,CPU是不会响应的,因为int 9h是可屏蔽中断,所以一定有设置IF=1的指令。

下面是第二版汇编语言第303页的一段程序的分析

assume cs:code

code segment 

start: mov ah,0          ;采用int 16h的0号例程
       int 16h           ;从键盘读取一个字符
       
       mov ah,1      ...
阅读全文 | 评论次数(-3) | 浏览次数(911) | 所属类型(汇编作业)

[2008-06-10 15:33] 第15章检测题(附14章的两道检测题)

1.下面的说法正确的是___4___。 
 1、 外设的输入随时都能获得CPU的处理。 
 2、 计算机外设的输入不直接送入CPU,而是直接送入内存。 
 3、 标志寄存器IF位决定着中断信息能否被CPU处理。 
 4、 以上说法都有错误。 

分析:可能选4,不可屏蔽中断就不由IF决定
第一次我选了3,做错了

2.以下说法错误的是___2__。 
 1、 CPU通过总线和端口来与外部设备进行联系。 
 2、 不可屏蔽中断过程的第一步是取中断类型码。 
 3、 外部可屏蔽中断的中断类型码是通过数据总线送入CPU的。 
 4、 中断过程中将IF置为0是为了在中断过程中...
阅读全文 | 评论次数(3) | 浏览次数(660) | 所属类型(汇编作业)

[2008-06-10 09:05] 检测点16.1、16.2

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 word ptr b[0],ax
             adc word ptr b[2],0
             add si,2
             loop s
             
             mov ax,4c00h
             int 21h
             
code ends

end start                              

我们还可以写为
ad...
阅读全文 | 评论次数(2) | 浏览次数(881) | 所属类型(汇编作业)

[2008-06-10 00:55] 实验16

点击查看原图
assume cs:code

code segment

setscreen: jmp short set
   
table dw sub1,sub2,sub3,sub4  ;待安装的中断例程
set: push bx
                              ;这些都是书上有的
     cmp ah,3
     ja sret
     mov bl,ah
     mov bh,0
     add bx,bx
           
     call word ptr table[bx]
     
sret:pop bx  ...
阅读全文 | 评论次数(4) | 浏览次数(675) | 所属类型(汇编作业)

[2008-06-06 22:40] 实验15

点击查看原图
assume cs:code

stack segment
        db 128 dup (0)
stack ends

code segment

start: mov ax,stack              ;设置堆栈
       mov ss,ax
       mov sp,128
       
       push cs
       pop ds
       
       mov ax,0
       mov es,ax
       
       mov si,offset int9
       mov di,204h
   ...
阅读全文 | 评论次数(1) | 浏览次数(350) | 所属类型(汇编作业)

[2008-06-06 16:05] 检测点15.1

1.精简为
pushf
call dword ptr ds:[0]

2.在往中断向量表项中写入新int9的入口地址时,要屏蔽中断
cli
mov word ptr es:[9*4],offset int9
mov es:[9*4+2],cs
sti

初看第二版280页的程序时,还是迷糊了好一阵,中断怎么进入的,又是怎么回来的,然后回到哪儿去

首先我们按下了键盘,int9就会响应了,这时中断就开始了,跳转到新安装的int9中,然后通过iret返回,返回到字符显示的循环中

实际上我们所做的工作是编写了一个类似与引导程序的东西,然后加入了一些其他功能,如改变字符颜...
阅读全文 | 评论次数(1) | 浏览次数(338) | 所属类型(汇编作业)

[2008-06-04 22:29] 第十三章检测题

1.执行n号中断源对应的中断服务程序,CS,IP的内容应被修改为:(3) 
 1、 (IP) = (n*4+2) (CS) = (n*4)  
 2、 (IP) = (n*2+2) (CS) = (n*2)  
 3、 (IP) = (n*4) (CS) = (n*4+2) 
 4、 (IP) = (n*2) (CS) = (n*2+2) 

8086的堆栈sp是逐渐减小的,所以地址值大的就是先入栈的
int指令将FR,CS,IP先后入栈

2.关于ret 和 iret下列说法错误的是   (1)
 1、 ret和iret都改变标志寄存器的值 
 2、 ret不改变cs的...
阅读全文 | 评论次数(1) | 浏览次数(440) | 所属类型(汇编作业)

[2008-06-04 22:08] 第十二章检测题

点击查看原图
1.下列指令能通过编译的是 
 1、 div [32] 
 2、 mov ax,ds:[bp] 
 3、 int 121h 
 4、 jmp 32 

1.内存单元指的是字节还是字
4.也是同样的问题
3.一共有256个中断,121h>FFh
所以只能选2了

2.  在执行int指令前各个寄存器的值如下 
    AX=1221 BX=0005 CX=0014 DX=0000 SP=0016 BP=0000 SI=0000 DI=0000 
    DS=B800 ES=13F4 SS=1404 CS=1404 IP=0012 NV UP EI PL NZ NA P...
阅读全文 | 评论次数(1) | 浏览次数(391) | 所属类型(汇编作业)
页码数(5):  1  2  3  4  5