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

我的博客

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

[2010-11-14 10:04] 推荐博文 第二章

一、下列地址信息与0020H:03EFH确定的内存地址不同的是(B) 

A、5EFH     B、203H:00EFH     C、005EH:000FH     D、0002H:05CFH 

解析:0020H:03EFH确定的物理地址为005EFH,,B结果为0211FH与题中给出的物理地址不符。 

二、 1000:0  mov  ax,8 
    1000:3  jmp  ax 
    1000:5  mov  ax,0 
    1000:8  mov  bx,ax 
    1000:a  jmp  bx 
CPU从1000:0处开始执行指令当执行完1000:a处的指令后几次修改IP(C) 

A、4        B、5        C、6        D、7 

解析:  
1000:0  mov  ax,8   执行后IP+3=3   IP第一次改变 
1000:3  jmp  ax     执行后IP+2=5   IP第二次改变,有转移指令,IP再次改变,IP第三次改变 
1000:5  mov  ax,0            
1000:8  mov  bx,ax  执行后IP+2=A   IP第四次改变 
1000:a  jmp  bx     执行后IP+2=C   IP第五次改变,有转移指令,IP再次改变,IP第六次改变 

三、下列关于8086CPU的工作原理的描述错误的是(C) 

A、汇编程序员可以通过对各种寄存器中内容的修改实现对CPU的控制。 

B、CPU在访问内存时,采用“段地址*16+偏移地址”的形式给出要访问的内存单元的物理地址。 

C、任意时刻,CS:IP指向的内容即是此刻CPU正在执行的指令。 

D、传送指令能够更改所有通用寄存器的内容。 

解析:CPU的工作过程: 
1、从CS:指向的内存单元读取指令,读取的指令进入指令缓冲器; 
2、IP指向下一条指令; 
3、执行指令。(转到步骤1重复这个过程) 

四、16位结构的CPU不一定具备的特征是(D) 

A、运算器一次最多处理16位的数据。 
B、寄存器的最大宽度为16位。 
C、寄存器和运算器之间的通路为16位。 
D、地址总线为16根。 

解析:8086CPU为16位CPU,地址总线为20根。 

五、mov  ax, 936AH 
    mov  bx,79B8H 
    add  al,bl 
指令执行后AX中的数据是(B) 

A、1C22H        B、9322H        C、9422H        D、1D22H 

解析: 
第一步执行完AX=936AH; 
第二步执行完BX=79B8H; 
第三步执行完AL+BL=122,AX=9322H 

六、在DEBUG中,(A)选项中的命令可以修改内存单元的内容 

A、A        B、D        C、T        D、U 

解析:A和E命令可以修改内存单元的内容。 
     A命令在内存单元中以汇编指令的格式在内存中写入一条机器指令。 
     E命令可直接在内存中写入数据。 

七、下列说法中正确的是(D) 

A、一条指令被执行后,IP的值进行改变。 
B、当CPU执行完当前指令返回debug后CPU就闲下来不再进行工作。 
C、E命令可将所有内存单元中的数据进行改变。 
D、CPU将CS:IP所指向的内存单元中的数据当做指令来执行。 

解析:A、当数据从内存中读出送入指令缓冲器之后,IP值增加,然后执行指令。在指令执行前,IP的值进行改变。 
     B、当CPU执行完当前指令后,继续执行CS:IP所指向的下一条指令。 
     C、ROM中的内容不可改变。 

八、下列说法中正确的是(D) 

A、8086CPU采用“段地址*16+偏移地址=物理地址”的寻址模式,所以内存是有一个一个的段组成,每一个段有一个段地址。 

B、物理地址为FFFF0H的内存单元的偏移地址可能为FFFFH。 

C、一个段的大小可以是8Byte。 

D、在一段没有任何跳转指令的程序中,超出64K的部分将不会被执行。 

解析: 
A、内存不是由段组成的,段的划分是有CPU来确定的。 
B、如果物理地址为FFFF0H,偏移地址为FFFFH,则段地址为EFFF1H,但EFFF1H不是合法的段地址,所以该物理地址的偏移地址不能为FFFFH。 
C、每个段的起始地址必须为16的整数倍,所以一个段最小为16B。 

九、  mov  ax,936AH 
      mov  bx,79B8H 
      add  ax,bx 
 指令执行后AX中的数据是(C) 

A、1C22H        B、0C22H        C、0D22H        D、1D22H 

解析:最终结果为10D22H,但AX为16位寄存器,所以最高位丢弃,结果为0D22H.。 

十、下面哪个是错误的指令(D) 

  1、mov  ax,bx 

  2、add  al,0f5h 

  3、mov  al,bh 

  4、add  al,100h  

解析:AL为8位寄存器,不能将高于8位的数据放入8位寄存器内。
评论次数(15)  |  浏览次数(40640)  |  类型(汇编作业) |  收藏此文  | 

[  游客   发表于  2010-11-16 15:11  ]

十、下面哪个是错误的指令(D)  
  1、mov  ax,bx  
  2、add  al,0f5h  
  3、mov  al,bh  
  4、add  al,100h 

这个应该是 ' 3、mov  al,bh  ' 错了吧 'bh'应写成'0bh'

[  robin2008   发表于  2010-11-16 15:15  ]

解析:   
1000:0  mov  ax,8   执行后IP+3=3   IP第一次改变  
1000:3  jmp  ax     执行后IP+2=5   IP第二次改变,有转移指令,IP再次改变,IP第三次改变  
1000:5  mov  ax,0             
1000:8  mov  bx,ax  执行后IP+2=A   IP第四次改变  
1000:a  jmp  bx     执行后IP+2=C   IP第五次改变,有转移指令,IP再次改变,IP第六次改变 

'1000:5  mov  ax,0' 执行后IP为什么不改变?

[  游客   发表于  2010-11-18 17:13  ]

'1000:5  mov  ax,0' 执行后IP为什么不改变?
--------------
没有执行这句

这个应该是 ' 3、mov  al,bh  ' 错了吧 'bh'应写成'0bh'
--------------------------
语法没错,bh这里是寄存器,

可以在debug下跟踪验证

[  z497917579   发表于  2011-04-08 16:58  ]

"汇编程序员可以通过对各种寄存器中内容的修改实现对CPU的控制。"大侠们,这句话真的准确吗?

[  hack_gx   发表于  2011-04-22 19:50  ]

为什么不执行啊???(mov ax,0)

[  lshang   发表于  2011-06-08 17:26  ]

"为什么不执行啊???(mov ax,0) "
    1000:0  mov  ax,8  
    1000:3  jmp  ax  
    1000:5  mov  ax,0  
    1000:8  mov  bx,ax  
    1000:a  jmp  bx  

第二句执行时,ax = 8.
所以直接跳到1000:8处执行了。

[  moonrose   发表于  2011-09-18 11:22  ]

十、下面哪个是错误的指令(D)   
  1、mov  ax,bx   
  2、add  al,0f5h   
  3、mov  al,bh   
  4、add  al,100h  
我在debug下第二个和第四个都有错误(没加h)。所以我认为这个题第三和第四都是错误的

[  cpt1975   发表于  2011-10-26 09:26  ]

4、add  al,100h  错误,书本19页很清楚,错误原因是指令的两个操作对象位数不一致,al是8位寄存器,100h是100000000B

[  zhujinwu   发表于  2012-03-04 10:44  ]

十、下面哪个是错误的指令(D)    
  1、mov  ax,bx    
  2、add  al,0f5h    
  3、mov  al,bh    
  4、add  al,100h   
我在debug下第二个和第四个都有错误(没加h)。所以我认为这个题第三和第四都是错误的
--------------------------
add al,0f5h在Debug中应该写成:add al,f5
前面的0和后面的h都应该去掉

[  aa227168   发表于  2012-09-17 21:53  ]

第八题的b 我不太明白可以说的详细点吗?

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码