指令习题
- 格式:doc
- 大小:32.00 KB
- 文档页数:1
第五章指令系统一、选择题1、采用直接寻址,操作数在中。
A、主存B、寄存器C、硬盘D、光盘2、为了缩短指令中某个地址段的位数,有效的方法是采取。
A、立即寻址B、变址寻址C、间接寻址D、寄存器寻址3、指令系统采用不同寻址方式的目的是。
A、实现存储程序和程序控制B、缩短指令长度,扩大寻址空间,提高编程灵活性C、可以直接访问外存D、提供扩展操作码的可能,并降低指令译码难度4、假设寄存器R中的数值为200,主存地址为200和300的地址单元中存放的内容分别是300和400,则方式下访问到的操作数为200。
A、直接寻址200B、寄存器间接寻址(R)C、存储器间接寻址(200)D、寄存器寻址R5、输入输出指令的功能是。
A、进行算术运算和逻辑运算B、进行主存和CPU之间的数据传送C、进行I/O设备和CPU之间的数据传送D、改变程序执行的顺序6、下列关于RISC的描述中,不正确的是。
A、只选用简单的,使用频率高的指令,所以采用RISC的CPU的性能较差,不能运行复杂的指令B、指令长度固定,指令格式和寻址方式少C、采用硬布线逻辑,提高指令执行的速度D、采用指令流水线技术,大部分指令都能在一个机器周期中完成。
7、间接寻址是指。
A、指令中直接给出操作数地址B、指令中直接给出操作数C、指令中间接给出操作数D、指令中间接给出操作数的地址8、基址寻址方式中,操作数的有效地址等于。
A、基址寄存器的内容加上形式地址(偏移量)B、变址寄存器的内容加上形式地址(偏移量)C、程序计数器的内容加上形式地址(偏移量)D、堆栈寄存器的内容加上形式地址(偏移量)8.通常指令编码的第一个字段是__ __A.操作B.指令C.操作码D.控制码9.堆栈常用于 _A.程序转移B.输入输出C.数据移位D.保护程序现场10.在堆栈中保持不变的是_ _A.栈指针B.栈底C.栈顶D.栈中数据11.设寄存器R=1000,地址1000处的值为2000,2000处为3000,PC的值为4000,用相对寻址方式,-2000(PC)的操作数是__ __A.4000 B.3000C.5000 D.700012.直接转移指令的功能是将指令中的地址代码送入__ __A.PC B.累加器C.存储器 D.地址寄存器13.以下的 D 不能支持数值处理。
二步指令训练例子
以下是 8 条二步指令训练例子:
1. 嘿,先把那个杯子拿过来,然后给我倒杯热水呗。
比如说,你在外面冻得要命,回家后让家人这么做,马上就能喝到热水,多舒服呀!
2. 来,先把地扫一下,接着再拖一遍呀。
就像你看到房间脏兮兮的,这么一干,不就变干净整洁啦,哇塞!
3. 你先给我找支笔,再拿个本子过来嘛。
这就好像做作业的时候,没笔没本子可不行,这样才能开始写呀,对吧?
4. 快点,先把衣服叠好,然后放柜子里去呀。
这就跟整理衣柜似的,不这么做怎么能整齐呢,你说呢?
5. 喂,先去把菜洗了,洗完别忘了切好啊。
就好比做饭前的准备,少了这两步可做不好饭哟!
6. 听着哈,先把电视打开,再调个喜欢的频道呗。
就好像周末休息的时候,躺在沙发上舒舒服服地看电视,多惬意呀!
7. 来呀,先把垃圾提到门口去,然后等会儿出去的时候扔掉呀。
这就像我们要保持家里清洁,必须得这么做才行呢!
8. 嘿,先把灯打开,再看看书呗。
晚上不就是这样嘛,开灯才能看清字呀,这不是常识嘛!
我的观点结论:这些二步指令训练例子在生活中很实用啊,可以让事情更有条理地进行呢!。
arm指令练习题ARM指令练习题在计算机科学领域,指令是计算机硬件执行的基本单位。
而ARM指令则是一种常用的指令集架构,广泛应用于移动设备、嵌入式系统和高性能计算等领域。
为了更好地理解和掌握ARM指令的使用,我们可以通过练习题来加深对其的理解。
练习一:寄存器操作1. 将寄存器R0的值设置为0x12345678。
2. 将寄存器R1的值设置为寄存器R0的值加上0x80000000。
3. 将寄存器R2的值设置为寄存器R0和寄存器R1的异或结果。
4. 将寄存器R3的值设置为寄存器R1的值减去寄存器R0的值。
5. 将寄存器R4的值设置为寄存器R2的值右移8位。
练习二:条件分支1. 如果寄存器R0的值等于0x1234,则跳转到标签L1。
2. 如果寄存器R0的值小于0x1000,则跳转到标签L2。
3. 如果寄存器R0的值大于等于0x8000,则跳转到标签L3。
4. 如果寄存器R0的值不等于0x5678,则跳转到标签L4。
L1:; 执行一些操作L2:; 执行一些操作L3:; 执行一些操作L4:; 执行一些操作练习三:数据传输1. 将寄存器R0的值存储到内存地址0x2000处。
2. 将内存地址0x3000处的值加载到寄存器R1中。
3. 将寄存器R2的值存储到内存地址0x4000处,并将内存地址0x4004处的值加载到寄存器R3中。
练习四:逻辑运算1. 将寄存器R0的值与0xFF进行按位与操作,并将结果存储到寄存器R0中。
2. 将寄存器R1的值与0xFF进行按位或操作,并将结果存储到寄存器R1中。
3. 将寄存器R2的值与0xFF进行按位异或操作,并将结果存储到寄存器R2中。
练习五:算术运算1. 将寄存器R0的值与0x0F进行按位与操作,并将结果存储到寄存器R0中。
2. 将寄存器R1的值与0x0F进行按位或操作,并将结果存储到寄存器R1中。
3. 将寄存器R2的值与0x0F进行按位异或操作,并将结果存储到寄存器R2中。
计算机操作指令复习题在计算机领域,操作指令是用来控制计算机硬件和软件运行的命令。
了解和掌握各种操作指令是计算机学习的基础,也是日常工作中非常重要的一部分。
本文将通过复习题的形式,帮助读者回顾和巩固对计算机操作指令的理解和应用。
一、选择题1. 在Windows系统中,以下哪个指令用于创建一个新的文件夹?A. rmB. copyC. mkdirD. move2. 在Linux系统中,以下哪个指令用于列出当前目录下的文件和文件夹?A. lsB. dirC. cdD. pwd3. 在命令行中,以下哪个符号表示重定向输出到一个文件?A. >B. |C. &D. :4. 在Git版本控制系统中,以下哪个指令用于从远程仓库克隆一个代码库到本地?A. git cloneB. git commitC. git pushD. git pull5. 在Python编程语言中,以下哪个指令用于打印输出内容到控制台?A. print()B. input()C. len()D. range()二、填空题1. 在命令行中,以下指令用于切换到上一级目录的是__________。
2. 在HTML中,以下标签用于创建一个段落的是__________。
3. 在CSS中,以下属性用于设置文本颜色的是__________。
4. 在JavaScript中,以下函数用于获取元素内容的是__________。
5. 在SQL中,以下关键字用于从表中删除记录的是__________。
三、简答题1. 简述字节码是什么?为什么Java等一些语言使用字节码?2. 简述操作系统中的进程和线程的区别。
3. 举例说明一种常见的数据结构,并解释其应用场景。
四、编程题请使用Python编写一个程序,能够实现以下功能:1. 要求用户输入一个整数n,然后输出1到n的所有整数。
2. 将1到n的所有整数保存到一个列表中,并按照从小到大的顺序输出列表。
提示:可以使用for循环和range()函数来实现上述功能。
PLC指令与编程课后练习题(有答案)
1.(单选题)置位复位指令中N的取值范围为( )。
A 0-255
B 1-255
C 0-256
D 1-256
正确答案:B
2.(单选题)PLS是( )指令。
A 上沿微分
B 置位
C 出栈
D 步进
正确答案:A
3.(单选题)在梯形图中,为减少程序所占的步数,应将串联触点数多的支路排在( )。
A 前
B 上
C 下
D 后
正确答案:B
4.(单选题)如果跳转开始时定时器和计数器已在工作,则在跳转执行期间它们将( ) 。
A 复位
B 置位
C 停止工作
D 继续工作
正确答案:C
5.(单选题)下列语句表选项中语法正确的是( ) 。
A PLF Y0
B ORB M0
C ANI X8
D OUT X0
正确答案:A
6.(单选题)下列指令使用正确的是( ) 。
A OUT X0
B MPP Y0
C OUT C0
D RST M0
正确答案:D。
指令系统练习题1、判别下列语句是否有错并说明理由:(1) MOV [SI],’A'(2) MOV AL,BX(3) MOV BL,SI+2(4) INC [BX](5) MOV 256,AL(6) MOV AX,BYTE PTR ALFA(7) MOV ALFA,BATA(8) MUL -25(9) PUSH 20A0H(10) POP CS2、请执行下段程序,给出各寄存器的内容:MOV AX,0A0BHDEC AXSUB AX,0FFHAND AX,00FFHMOV CL,3SAL AL,CLADD AL,25HXCHG AL,AHPUSH AXPOP BXINC BLMUL BL3、已知AX=003AH,请根据AX值用移位指令实现:①使BL=03H,BH=0AH;②CX=030AH;③DX =2*3AH;④SI=0A3H。
4、在A地址处有100个字节数据,今要求传送到B地址处,请编程实现。
5、使AL高4位置1,判断低4位是否大于9,如大于9,则使低4位变反,否则将低4位置成9,试编程实现之。
6、在A、B地址起各有4个字节单元的无符号数,试编程实现二个无符号数(16位)的和,并将值存于C址起的单元中。
7、阅读下面程序并说明其功能:LEA SI,ALP: IN AL,20HAND AL,0FHOR AL,30HCMP AL,’*’JZ ENDPRMOV [SI],ALINC SIOUT 30H,ALJMP LPENDPR: HLT8、在A字单元有一个有符号被除数,在B字单元有一个有符号除数,求其商存于C字单元中,余数存D字单元中,试编程实现之。
微机原理指令部分综合练习题微机原理指令部分综合练习题一、选择题1、指令MOV CX,10H[SI]中,源操作数的寻址方式是()A、寄存器寻址B、基址寻址C、变址寻址D、基址变址寻址2、MOV AX,ES:[BX][SI]指令中,源操作数的物理地址是()A、(DS)*10H+(BX)+(SI)B、(ES)*10H+(BX)+(SI)C、(SS)*10H+(BX)+(SI)D、基址变址寻址3、设(SS)=2000H,(SP)=0100H,(AX)=2345H,执行PUSH AX指令后,存放数据23H的物理地址是()A、200FEHB、20101HC、20102HD、200FFH4、下列指令中,源操作数的寻址方式为直接寻址的指令是()A、ADD AX,10H[BX+SI]B、AND AX,[2000H]C、INC CXD、MOV BX,7FFFH5、设(AL)=85H,(CH)=29H,依次执行SUB AL,CH指令和DAS指令后,(AL)=()A、AEHB、56HC、5CHD、14H6、INC指令不影响的标志位是()A、OFB、CFC、SFD、ZF7、设(AL)=0E0H,(CX)=03H,执行RCL AL,CL指令后,CF=()A、0B、1C、不变D、变反8、已知(BL)=0FH,执行TEST BL,8FH指令后,(BL)=()A、0B、OFHC、8FHD、FFH9、完成将BX清零,并使标志位CF清零,下面错误的指令是()A、SUB BX,BXB、XOR BX,BXC、MOV BX,OOOOHD、AND BOH10、下列指令中,不影响标志寄存器CF的指令是()A、ADD BL,CHB、SUB BX,1000C、SAR DX,1D、DIV CX11、下列指令中,不影响SF标志位的是()A、RCL AX,1B、SAR AX,1C、AND BH,OFHD、ADC AX,SI12、完成将有符号数BX的内容除以2的指令是()A、SHR BX,1B、SAR BX,1C、ROR BX,1D、RCL BX,113、将AX寄存器的内容求反的指令是()A、CMP AX,AXB、XOR AX,OFFFFHC、NOT AXD、NEG AX14、执行下列指令序列的结果是()MOV BX,OFFFCHMOV CL,2SAR BX,CLA、3FFFHB、OFFFCHC、OFFFFHD、OFFF5H15、执行下列指令序列后,(AX)=()MOV AL,87MOV CL,4MOV AH,ALAND AL,0FHOR AL,30HSHR AH,CLOR AH,30H A、3537H B、3738H C、3735H D、3837H二、填空题1、构成存储单元的有效地址有______________、________________、__________________三个元素。
第4章8086/8088CPU指令系统1.请指出以下各指令的源、目的操作数所使用的寻址方式。
(1)MOV SI,2100H (2)SBB DISP[BX],7 (3)AND [DI],AX (4)OR AX,[609EH] (5)MOV [BX+DI+30H],CX (6)PUSH ES:[BP](7)CALL [DI]DISP(8)JNZ Short_ label答:(1)源操作数:立即数寻址;目的操作数:寄存器寻址(2)源操作数:立即数寻址;目的操作数:(带位移量的)基址寻址(3)源操作数:寄存器寻址;目的操作数:变址寻址(4)源操作数:直接寻址;目的操作数:寄存器寻址(5)源操作数:寄存器寻址;目的操作数:(带位移量的)基址变址寻址(6)源操作数:带段超越的基址寻址;目的操作数:隐含寻址(7)只有一个操作数,为(带位移量的)变址寻址(8)只有一个操作数,为相对寻址2.请指出下列各条指令的错误,并改正。
(1)MOV DS,1000H(2)MOV [100],23H(3)ADD AX,[BX+BP+6] (4)PUSH DL(5)IN AX,[3FH](6)OUT 3FFH,AL(7)LES SS,[SI](8)POP [AX](9)IMUL 4CH (10)SHL BX,5(11)INT 300(12)XCHG DX,0FFFH (13)MOV AH,BX(14)MOV [BX],ES:AX (15)MOV AX,OFFSET [SI] (16)MOV CS,AX(17)MOV DS,ES答:(1)不允许直接向段寄存器送立即数,可改为:MOV AX,1000HMOV DS,AX(2)该指令在语法上是对的,即可以把一个立即数送入一个存储单元;但是如果考虑实际编译,则第一操作数前应加上BYTE PTR或WORD PTR说明,否则汇编程序会因不能确定操作数长度而指示出错。
可改为:MOV BYTE PTR [100],23H(3)不能同时使用两个基址寄存器BX、BP进行间接寻址,可改为:ADD AX,[BX+DI+6](4)堆栈操作应以字为单位进行,而DL是一个字节。
1单选(1分)下列和指令字长无关的是___。
A.操作码的长度B.操作数地址的个数C.数据总线宽度D.操作数地址的长度2.假设指令字长为16位,操作数的地址码为6位,指令有零地址、一地址、二地址三种格式。
设操作码固定,若零地址指令有3种,一地址指令有5种,则二地址指令最多有___种。
A.7B.9C.8D.43.设机器字长为16位,存储器按字编址,对于单字长指令而言,读取该指令后,PC值自动加______ A.1 B.2 C.3 D. 44.设机器字长为16位,存储器按字节编址,CPU读取一条单字长指令后,PC值自动加____ A.1 B.2 C.3 D.45 图中所示的寻址方式是___。
A.直接寻址B.立即数寻址C.间接寻址D.寄存器寻址6.以下关于堆栈寻址的描述错误的是___。
A.全部错误B.可用硬盘来实现堆栈,称为硬堆栈C.可用内存来实现堆栈D.可用寄存器组来实现堆栈7.指令的一般格式包括___。
A.地址码字段和纠删码字段B.操作码字段和纠删码字段C.地址码字段和海明码字段D.操作码字段和地址码字段8.在设计指令格式时应该考虑的因素包括___。
A.寄存器个数B.操作类型C.数据类型D.寻址方式9.以下寻址方式中,属于数据寻址的是___。
A.间接寻址B.变址寻址C.指令寻址D.顺序寻址10.试分别说明下列各指令中操作数使用的寻址方式:(1)MOV AX,0FFH(2)MOV BL,[OFFH](3)MOV DS,AX(4)MOV [SI],CX(5)MOV DS:[0FFH],CL(6)MOV [BP][SI],AH(1)立即数寻址(2)直接寻址(3)寄存器寻址(4)寄存器间接寻址(5)直接寻址(6)基址变址寻址11.如果TABLE为数据段中0032单元的符号名,其中存放的内容为1234H,当执行指令”MOV AX,TABLE”和”LEA AX,TABLE”后,(AX)中的内容分别为多少?答:执行MOV AX , TABLE 后(AX)=1234H 执行LEA AX, TABLE 后(AX)=0032.。
指令与指令计算例题及练习题
本文档旨在提供有关指令和指令计算的例题和练题。
例题
例题1
请计算以下指令的结果:
MOV AX, 5 ; 将立即数5复制到寄存器AX
MOV BX, 3 ; 将立即数3复制到寄存器BX
ADD AX, BX ; 将寄存器AX和寄存器BX中的值相加并将结果存储到寄存器AX
答案:寄存器AX的值为8。
例题2
请计算以下指令的结果:
MOV AX, 10 ; 将立即数10复制到寄存器AX
MOV BX, 4 ; 将立即数4复制到寄存器BX
DIV BX ; 将寄存器AX的值除以寄存器BX的值并将商存储到寄存器AX
答案:寄存器AX的值为2。
练题
以下是一些指令计算的练题:
1. 请计算以下指令的结果,并将结果存储到指定的寄存器:
MOV AX, 7 ; 将立即数7复制到寄存器AX
MOV BX, 2 ; 将立即数2复制到寄存器BX
SUB AX, BX ; 将寄存器AX和寄存器BX中的值相减并将结果存储到寄存器AX
答案:寄存器AX的值为5。
2. 请计算以下指令的结果,并将结果存储到指定的寄存器:
MOV AX, 15 ; 将立即数15复制到寄存器AX
MOV BX, 3 ; 将立即数3复制到寄存器BX
MUL BX ; 将寄存器AX的值乘以寄存器BX的值并将结果存
储到寄存器AX
答案:寄存器AX的值为45。
请按照以上的例题和练习题进行指令和指令计算的学习和练习。
如需更多例题和练习题,请参考相关教材或咨询专业老师。
楼第4章指令系统习题解答习题解答:1、什么叫寻址方式?8086/8088cpu共有哪几种寻址方式?请问:指令的串行方式就是指赢得操作数所在地址的方法。
8086/8088cpu指令的串行方式可以分成8种,为立即串行、轻易串行、寄存器串行、寄存器间接串行、寄存器相对串行、基址变址串行、基址变址相对串行、暗含串行。
2、指出下列指令中源操作数和目的操作数的寻址方式(1)movax,[si]源操作数:寄存器串行目的操作数:寄存器间接串行(2)movdi,100源操作数:寄存器串行目的操作数:立即串行(3)mov[bx],al源操作数:寄存器间接串行目的操作数:寄存器串行(4)mov[bx+si],cx源操作数:基址变址串行目的操作数:寄存器串行(5)adddx,106h[si]源操作数:寄存器串行目的操作数:寄存器相对串行3、判读以下指令的对错(1)sti对(2)call1000h错(3)divax,dl错(4)shlal,4错(5)popax对(6)inal,[30h]弄错(7)inccs错(8)out40h,al对4、根据已知条件,计算划线部分的物理地址。
已知:ss=1000h,es=2000h,ds=3000h,cs=4000h,bx=5000h,di=1200h,bp=2300h(1)(2)(3)(4)(5)5、设sp初值为2400h,ax=4000h,bx=3600h,则执行指令pushax后,sp=?,再执行pushbx和popax后sp=?请问:则继续执行指令pushax后,sp=2400h-2=23feh,再继续执行pushbx和popaxmovax,[2300h]计算公式:ds×16+2300hmov[bx][di],ax计算公式:ds×16+bx+diaddax,es:[2100h]计算公式:es×16+2100hsubdx,[bp+6]计算公式:ss×16+bp+6movax,[di]计算公式:ds×16+di后sp=23feh。
一.选择题1.指令ADD CX,55H[BP]的源操作数的寻址方式是( )。
(A) 寄存器寻址 (B) 直接寻址 (C) 寄存器间接寻址 (D) 寄存器相对寻址2.设(SS)=3300H,(SP)=1140H,在堆栈中压入5个字数据后,又弹出两个字数据,则(SP)=( ) 。
(A) 113AH (B) 114AH (C) 1144H (D) 1140H3.若SI=0053H,BP=0054H,执行SUB SI,BP后,则( )。
(A) CF=0,OF=0 (B) CF=0,OF=1 (C) CF=1,OF=0 (D) CF=1,OF=14.已知(BP)=0100H,(DS)=7000H,(SS)=8000H,(80100H)=24H,(80101H)=5AH,(70100H)=01H,(70101H)=02H,指令MOV BX,[BP]执行后,(BX)=( ) 。
(A) 0102H (B) 0201H (C) 245AH (D) 5A24H5.实模式下80486CPU对指令的寻址由( )决定。
(A) CS,IP (B) DS,IP (C) SS,IP (D) ES,IP6.使用80486汇编语言的伪操作指令定义: VAL DB 2 DUP(1,2,3 DUP(3),2 DUP(1,0)) 则在VAL存储区内前十个字节单元的数据是( )。
(A) 1,2,3,3,2,1,0,1,2,3 (B) 1,2,3,3,3,3,2,1,0,1(C) 2,1,2,3,3,2,1,0 (D) 1,2,3,3,3,1,0,1,0,17.下列四条指令都可用来使累加器清"0",但其中不能清"进位"位的是( ) 。
(A) XOR AL,AL (B) AND AL,0 (C) MOV AL,0 (D) SUB AL,AL8.若(AX)=96H,(BX)=65H,依次执行ADD AX,BX指令和DAA指令后,(AL)=( )。
基本指令练习题(正文开始)基本指令练习题练习一:计算器程序编写一个简单的计算器程序,接受用户输入的两个数字和操作符,然后输出计算结果。
要求支持加法、减法、乘法和除法四种基本运算。
示例输入输出:输入:2 + 3输出:5输入:5 - 2输出:3输入:4 * 6输出:24输入:10 / 5输出:2练习二:查找字符编写一个程序,接受用户输入的字符串和字符,输出该字符在字符串中第一次出现的位置。
示例输入输出:输入:Hello, World!,l输出:3输入:Python Programming,m输出:-1输入:Welcome to the jungle, o输出:4练习三:判断奇偶数编写一个程序,接受用户输入的数字,判断其奇偶性,并输出相应的提示信息。
示例输入输出:输入:10输出:10是偶数输入:7输出:7是奇数输入:0输出:0既不是奇数也不是偶数练习四:计算平均值编写一个程序,接受用户输入的一组数字(以逗号分隔),计算这组数字的平均值,并输出结果。
示例输入输出:输入:1, 2, 3, 4, 5输出:3.0输入:10, 15, 20, 25, 30输出:20.0输入:-1, 0, 1输出:0.0练习五:求和编写一个程序,接受用户输入的一组数字(以逗号分隔),计算这组数字的和,并输出结果。
示例输入输出:输入:1, 2, 3, 4, 5输出:15输入:10, 15, 20, 25, 30输出:100输入:-1, 0, 1输出:0练习六:找出最大值编写一个程序,接受用户输入的一组数字(以逗号分隔),找出其中的最大值,并输出结果。
示例输入输出:输入:1, 2, 3, 4, 5输出:5输入:10, 15, 20, 25, 30输出:30输入:-1, 0, 1输出:1练习七:反转字符串编写一个程序,接受用户输入的字符串,将其反转后输出。
示例输入输出:输入:Hello, World!输出:!dlroW ,olleH输入:Python Programming输出:gnimmargorP nohtyP输入:Welcome to the jungle输出:elgnuJ eht ot emocleW练习八:生成斐波那契数列编写一个程序,接受用户输入的数字n,生成长度为n的斐波那契数列,并输出结果。
指令与编程及答案一.单项选择题1. ORG 0003HLJMP 2000HORG 000BHLJMP 3000H2. 当CPU响应外部中断0后,PC的值是(A)。
A.0003HB. 2000HC. 000BHD. 3000H3. MCS-51的相对转移指令的最大负跳距离为( B )。
A.2KBB. 128BC.127BD. 256B4. 以下运算中对溢出标志0V没有影响或不受影响的运算是()。
A.逻辑运算B. 符号数加减运算C. 比较数据大小运算D. 除法运算5. 产生PSEN信号的指令是( C )。
A . MOVX A,@DPTR B. MOVX @DPTR, AC. MOVC A , @A+PCD. MOVX A, @A+DPTR6. MOVX A , @DPTR指令中的源操作数的寻址方式是(B )。
A.寄存器寻址B.寄存器间接寻址C.直接寻址D.立即寻址7. 将MCS-51的工作寄存器置成3区的指令是(B )。
A. MOV PSW , #13HB.MOV PSW , #18HC. SETB PSW.4 ,CLR PSW.3D.SETB PSW.3 ,CLR PSW.48. 指令AJMP的跳转范围是()。
A .256B B.1KB C.2KB D.64KB9. 6264芯片是()。
A.E2PROMB.RAM C .Flash ROM D .EPROM10. 下面那条指令产生WR信号( D )。
A.MOVX A , @DPTRB.MOVC A , @A+DPTRC.MOVC A , @A+PCD.MOVX @DPTR , A11. 执行LCALL 4000H指令时,MCS-51所完成的操作是( D )。
A.保护PCB.保护现场C.4000H →PCD.PC+3入栈,4000H → PC12. 下列指令中可能改变Cy的有()。
A.INC AB.CPL AC. RLC AD.MOV A , #data13.假定设置堆栈指针SP的值为36H,在执行指令PUSH 20H后,S P的值为( B )。
第5章指令系统〔习题5.1〕简答题(1)定长指令字和定长操作码是一回事吗?(2)什么是Load-Store指令集结构?(3)为什么将查找操作数的方法称为数据寻“址”方式?(4)是什么特点决定了目标地址的相对寻址方式应用最多?(5)堆栈的存取原则是什么?(6)IA-32处理器的INC,DEC,NEG和NOT都是单操作数指令,这个操作数应该是源操作数还是目的操作数?(7)IA-32处理器的乘除法运算针对无符号数和有符号数,有两种不同的指令。
只有一种指令的加减法如何区别无符号数和有符号数运算?(8)为什么判断无符号数大小和有符号大小的条件转移指令不同?(9)汇编语言的标识符大小写不敏感意味着什么?(10)为什么说RISC是计算机结构上的革新?〔习题5.2〕判断题(1)存储器寻址方式的操作数当然在主存了。
(2)堆栈的操作原则是“先进后出”,压入数据是PUSH指令、弹出数据是POP指令。
(3)空操作NOP指令其实根本没有指令。
(4)指令指针或者还包括代码段寄存器值的改变将引起程序流程的改变。
(5)JMP指令对应高级语言的GOTO语句,所以不应使用。
(6)IA-32处理器的条件转移指令Jcc要利用标志作为条件。
(7)处理器的传送指令MOV属于汇编语言的执行性语句。
(8)MASM汇编语言的注释用分号开始,但不能用中文分号。
(9)通常,RISC处理器只有“取数LOAD”和“存数STORE”指令访问存储器。
(10)RISC的指令条数少、指令简单、格式固定,所以编译程序也就容易实现,并且不需要优化。
〔习题5.3〕填空题(1)JMP指令根据目标地址的转移范围和寻址方式,可以分成四种类型:段内转移、__________,段内转移、__________和段间转移、__________,段间转移、__________。
(2)IA-32处理器将ESI寄存器内容压入堆栈的指令是__________,将堆栈顶部数据弹出到EDI寄存器的指令是__________。
作业习题寻址⽅式和指令寻址⽅式和指令习题⼀、选择题1、MOVX A,@DPTR指令中源操作数的寻址⽅式是()(A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)⽴即寻址2、ORG 0003HLJMP 2000HORG 000BHLJMP 3000H当CPU响应外部中断0后,PC的值是()(A)0003H (B)2000H (C)000BH (D)3000H3、执⾏PUSH ACC指令,MCS-51完成的操作是()(A)SP+1 SP (ACC)(SP)(B)(ACC)(SP)SP-1 SP(C)SP-1 SP (ACC)(SP) (D)(ACC)(SP)SP+1 SP4、LCALL指令操作码地址是2000H,执⾏完相⼦程序返回指令后,PC=()(A)2000H (B)2001H (C)2002H (D)2003H5、51执⾏完MOV A,#08H后,PSW的哪⼀位被置位()(A)C (B)F0 (C)OV (D)P6、下⾯条指令将MCS-51的⼯作寄存器置成3区()(A)MOV PSW,#13H (B)MOV PSW,#18H(C)SETB PSW.4 CLR PSW.3 (D) SETB PSW.3 CLR PSW.47、执⾏MOVX A,@DPTR指令时,MCS-51产⽣的控制信号是()(A)/PSEN (B)ALE (C)/RD (D)/WR8、MOV C,#00H的寻址⽅式是()(A)位寻址(B)直接寻址(C)⽴即寻址(D)寄存器寻址9、ORG 0000HAJMP 0040HORG 0040HMOV SP,#00H当执⾏完上⾯的程序后,PC的值是()(A)0040H (B)0041H (C)0042H (D)0043H10、对程序存储器的读操作,只能使⽤()(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令⼆、判断题1、MCS-51的相对转移指令最⼤负跳距是127B。
习题 21.机器指令分成几部分?每部分的作用是什么?2.试根据以下要求,分别写出相应的汇编语言指令:(1)以寄存器 BX 和 SI作为基址变址寻址方式把存储器中的一个字传送到 CX 寄存器。
(2)以寄存器 BX 和偏移量 V ALUE 作为寄存器相对寻址方式把存储器的一个字和 AX 相加,把结果(即和)送回那个字单元中。
(3)将一字节立即数 0B6H 与符号地址为 NUM 的存储器字节单元内容相比较。
(4)测试从寄存器 BP 和 DI、偏移量 COUNT 作为相对基址变址寻址方式寻址的存储器 字节单元内容最高位的值,字节单元的内容不能改变(5)将 AH 寄存器中的高四位和低四位数据互换。
(6)清除以寄存器 SI间接寻址的存储器字单元,同时清除 CF 标志位。
3.写出实现下列计算的指令序列。
(假定 X、Y、Z、W、R 都为字变量) (1)Z=W+(Z+X) (2)Z=W(X+6)(R+9)4.若在数据段中从字节变量 TABLE 相应的单元开始存放了 0~15 的平方值,试写出包含有 XLA T指令的指令序列查找 N(0~15)中的某个数的平方。
(设 N 的值存放在 CL中)5.写出实现下列计算的指令序列。
(假定 X、Y、Z、W、R 都为字变量) (1)Z=(W*X)/(R+6) (2)Z=((WX)/5*Y)*26.假定 DX=1100100110111001B,CL=3,CF=1,试确定下列各条指令单独执行后DX 的值。
(1)SHR DX,1 (2)SHL DL,1(3)SAL DH,1 (4)SAR DX,CL(5)ROR DX,CL (6)ROL DL,CL(7)RCR DL,1 (8)RCL DX,CL7.试分析下列程序完成什么功能?MOV CL,4SHL DX,CLMOV BL,AHSHL BL,CLSHR BL,CLOR DL,BL8.指出下列 MOV 指令的源操作数的寻址方式:MOV AX,1234HMOV AX,BXMOV AX,[BX]MOV AX,TABLE;TABLE ;TABLE 是一个变量名MOV AX,[1234H]MOV AX,[BX+1234H]MOV AX,[BP][SI]MOV AX,[BX+SI-1234H]9. 设:(DS) =2000H,(BX) =0100H,(SS) =1000H,(BP) =0010H, TABLE的物理地址为 2000AH, (SI)=0002H。
1、(12分)一台处理机具有如下指令格式
格式表明有8个通用寄存器(长度16位),X指定寻址模式,主存实际容量为256k 字。
(1)假设不用通用寄存器也能直接访问主存中的每一个单元,并假设操作码域OP=6位,请问地址码域应分配多少位?指令字长度应有多少位?
假设X=11时,指定的那个通用寄存器用做基值寄存器,请提出一个硬件设计规划,使得被指定的通用寄存器能访问1M主存空间中的每一个单元。
2.(12分)某机的16位单字长访内指令格式如下:
其中D为形式地址,补码表示(其中一位符号位);I为直接/间接寻址方式:I=1为间接寻址方式,I=0为直接寻址方式;M为寻址模式:0为绝对地址,1为基地址寻址,2为相对寻址,3为立即寻址;X为变址寻址。
设PC,Rx,Rb分别为指令计数器,变址寄存器,基地址寄存器,E为有效地址,请回答以下问题:(1)该指令格式能定义多少种不同的操作?立即寻址操作数的范围是多少?
(2)在非间接寻址情况下,写出各计算有效地址的表达式
(3)设基址寄存器为14位,在非变址直接基地址寻址时,确定存储器可寻址的地址范围
(4)间接寻址时,寻址范围是多少?
3.(12分)一台处理机具有如下指令字格式:
1 3位
X OP 寄存器地址
其中,每个指令字中专门分出3位来指明选用哪一个通用寄存器(12位),最高位用来指明它所选定的那个通用寄存器将用作变址寄存器(X=1时),主存容量最大为16384字.
(1)假如我们不用通用寄存器也能直接访问主存中的每一个操作数,同时假设有用的操
作码位数至少有7位,试问:在此情况下,“地址”码域应分配多少位?“OP”码域应分配多少位?指令字应有多少位?
(2)假设条件位X=0,且指令中也指明要使用某个通用寄存器,此种情况表明指定的那个
通用寄存器将用作基值寄存器.请提出一个硬件设计规则,使得被指定的通用寄存器能访问主存中的每一个位置。
(3)假设主存容量扩充到32768字,且假定硬件结构已经确定不变,问采用什么实际方法
可解决这个问题?。