. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(CPU工作原理)
主题 : :  第二章的测试题,看看到底哪道题错了  [待解决] 回复[ 19次 ]   点击[ 1053次 ]  
jovon
[帖 主] [ 发表时间:2010-08-20 21:33 ] 
荣誉值:0
信誉值:0
注册日期:2009-11-10 22:43
一 下面关于8086CPU的工作原理描述错误的是(3)
1汇编程序员可以通过对各种寄存器中内容的修改实现对CPU的控制
2CPU在访问内存时,采用“段地址*16+偏移地址”的形式给出要访问的内存单元的物理地址
3任意时刻,CS:IP指向的内容即是此刻CPU正在执行的指令
4传送指令能够更改所有通用寄存器的内容
二下列地址信息与0020H:03EFH确定的内存地址不同的是(2)
1  5EFH
2  203H:00EFH
3  005EH:000FH
4  0002H:05CFH
三下列说法正确的是(3)
1 8086CPU采用“段地址*16+偏移地址=物理地址”的寻址模式,所以内存是由一个一个的段组成,每一个段有一个段地址
2物理地址为ffff0H的内存单元的偏移地址可能为ffffH
3一个段的大小可以是8Byte
4在一段没有任何跳转指令的程序中,超出64K的部分将不会被执行
四下列说法正确的是(4)
1一条指令被执行后,IP的值进行改变
2当CPU执行完当前指令返回debug后CPU就闲下来不再进行工作
3 e命令可以将所有内存单元中的数据进行改变
4 CPU将CS:IP所指向的内存单元中的数据当作指令来执行
五Debug中可以改变内存单元内容的指令(4)
1 d 2 u 3 t 4 a
kind-sophia
[第12楼] [ 回复时间:2010-12-22 10:24 ] 
荣誉值:0
信誉值:0
注册日期:2010-12-06 08:46
在一段没有任何跳转指令的程序中,超出64K的部分将不会被执行  如果指令中没有跳转指令,段地址就不会改变,而偏移地址就会随着指令的执行进行自动修改,虽然内存没有段的概念,但是cpu在执行的过程中,是遵循"段地址*16+偏移地址"来确定物理地址的,当偏移地址达到最大值时(这时候该段的大小不一定是64k)段地址仍旧不变,而偏移地址会继续自动修改,这时候偏移地址就会出现所谓的"溢出"现象,而不会继续往下执行超出最大偏移地址的那部分内存单元.
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved