习题21.
机器指令分成几部分每部分的作用是什么2.
试根据以下要求,分别写出相应的汇编语言指令:(1)以寄存器BX和SI作为基址变址寻址方式把存储器中的一个字传送到CX寄存器.
(2)以寄存器BX和偏移量VALUE作为寄存器相对寻址方式把存储器的一个字和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的平方值,试写出包含有XLAT指令的指令序列查找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)SHRDX,1(2)SHLDL,1(3)SALDH,1(4)SARDX,CL(5)RORDX,CL(6)ROLDL,CL(7)RCRDL,1(8)RCLDX,CL7.
试分析下列程序完成什么功能MOVCL,4SHLDX,CLMOVBL,AHSHLBL,CLSHRBL,CLORDL,BL8.
指出下列MOV指令的源操作数的寻址方式:MOVAX,1234HMOVAX,BXMOVAX,[BX]MOVAX,TABLE;TABLE;TABLE是一个变量名MOVAX,[1234H]MOVAX,[BX+1234H]MOVAX,[BP][SI]MOVAX,[BX+SI-1234H]9.
设:(DS)=2000H,(BX)=0100H,(SS)=1000H,(BP)=0010H,TABLE的物理地址为2000AH,(SI)=0002H.
求下列每条指令源操作数的存储单元地址:MOVAX,[1234H]MOVAX,[BX]MOVAX,TABLE[BX]MOVAX,[BP]MOVAX,[BP][SI]10.
设ARRAY是字数组的首地址,写出将第5个字元素取出送AX寄存器的指令,要求使用以下几种寻址方式:⑴直接寻址⑵寄存器间接寻址⑶寄存器相对寻址⑷基址变址寻址11.
设有以下程序段,求执行完此程序后AX寄存器中的内容:ABCEQU2DATA1DB20HDATA2DW1000HSTART:MOVAX,DATA1+ABC12.
设变量ARRAY中连续存放了字变量NUMBR的偏移地址和段地址,试写出把变量NUMBR装入AX寄存器中的指令序列.
13.
设当前(CS)=2000H,(IP)=2000H,标号NEXT定义在当前代码段偏移地址是0100H处,(DS)=1000H,(BX)=1000H,(11000H)=00H,(11001H)=30H,数据段定义的字变量ARRAY的内容为1000H,试写出下列转移指令的目标转移地址⑴JMPNEARPTR⑵JMPBX⑶JMPWORDPTRARRAY14.
设DS=1000H,BX=2865H,SI=0120H,偏移量D=47A8H,试计算下列各种寻址方式下的有效地址.
(1)使用D的直接寻址.
(2)使用BX的寄存器间接寻址.
(3)使用BX和D的寄存器相对寻址.
(4)使用BX、SI和D的相对基址变址寻址.
15.
指出下列指令的错误原因:(1)MOVAX,CL(2)MOVCS,AX(3)INCBETA[BP](4)MOVES,1850H16.
写出把首址为BLOCK的字数组的第六个字传送到CX寄存器的指令序列,要求分别使用以下几种寻址方式:(l)以BX寄存器的间接寻址.
(2)以BX寄存器的相对寻址.
(3)以BX、SI的基址变址寻址.
17.
指出下列指令的源和目的操作数的寻址方式:(1)MOVARRAY,AX(2)ADCCX,ALPHA[BX[[SI](3)TESTES:[SI],DX(4)SBBSI,[BX]18.
试分析下列程序段,说明完成了什么操作程序执行前后,HEXNUM字节单元的内容是什么ASCNUMDB4lHHEXNUMDBMOVAH,ASCNUMCMPAH,39HJBENEXTSUBAH,7NEXT:SUBAH,30HMOVHEXNUM,AHHLT19.
设当前(CS)=2000H,(IP)=2000H,标号NEXT定义在3000H:1000H处.
当前(DS)=1000H,(BX)=1000H,(11000H)=00H,(11001H)=03H,(11002H)=00H,(11003H)=30H,数据段定义的字变量ARRAY的内容为0300H,(ARRAY+2)=3000H,试写出下列转移指令的目标转移地址:⑴JMPFARPTRNEXT⑵JMPDWORDARRAY20.
MOVCS,AX指令正确吗21.
若正在访问堆栈中03600H单元,则SS和SP的值是多少22.
若(SS)=2000H,(SP)=000AH,先执行将字数据1234H和5678H压入堆栈的操作,再执行弹出一个字数据的操作,试画出堆栈区及SP的内容变化过程示意图(标出存储单元的物理地址).
23.
解释XLAT指令是怎样转换AL寄存器中的内容的.
并编写一段程序用XLAT指令将BCD码0~9转换成对应的ASCII码,并将ASCII码存入数据ARRAY中.
24.
能用ADD指令将BX内容加到ES中去吗25.
INC[BX]指令正确吗26.
若(AX)=0001H,(BX)=0FFFFH,执行ADDAX,BX之后,标志位ZF、SF、CF、OF各是什么27.
写一指令序列完成将AX寄存器的最低4位置1,最高3位清0,第7、8、9位相反,其余位不变.
28.
试写出执行下列指令序列后AX寄存器的内容.
执行前(AX)=1234HMOVCL,7SHLBX,CL29.
假设下列指令中的所有标识符均为类型属性为字的变量,请指出下列指令中哪些是非法的它们的错误是什么⑴MOVBP,AL⑵MOVWORD_OP[BX+4*3][DI],SP⑶MOVWORD_OP1,WORD_OP2⑷MOVAX,WORD_OP1[DX]⑸MOVSAVEWORD,DS⑹MOVSP,SS:DATA_WORD[BX][SI]⑺MOV[BX][SI],2⑻MOVAX,WORD_OP1+WORD_OP2⑼MOVAX,WORD_OP1-WORD_OP2+100⑽MOVWORD_OP1,WORD_OP1-WORD_OP230.
假设VAR1和VAR2为字变量,LAB为标号,试指出下列指令的错误之处:⑴ADDVAR1,VAR2⑵SUBAL,VAR1⑶JMPLAB[SI]⑷JNZVAR1⑸JMPNEARLAB31.
画图说明下列语句所分配的存储空间及初始化的数据值.
⑴BYTE_VARDB'BYTE',12,-12H,3DUP(0,,2DUP(1,2),)⑵WORD_VARDW5DUP(0,1,2),,-5,,'BY','TE',256H32.
试列举各种方法,使汇编程序把5150H存入一个存储器字中(例如:DW5150H).
33.
假设程序中的数据定义如下:PARTNODWPNAMEDB16DUP()COUNTDDPLENTHEQU$-PARTNO问PLENTH的值为多少它表示什么意义34.
有符号定义语句如下:BUFFDB1,2,3,'123'EBUFFDB0LEQUEBUFF-BUFF问L的值是多少35.
假设程序中的数据定义如下:LNAMEDB30DUP()ADDRESSDB30DUP()CITYDB15DUP()CODE-LISTDB1,7,8,3,2⑴用一条MOV指令将LNAME的偏移地址放入AX.
⑵用一条指令将CODE_LIST的头两个字节的内容放入SI.
⑶写一条伪操作使CODE_LENGHT的值等于CODE_LIST域的实际长度.
36.
试写出一个完整的数据段DATA_SEG,它把整数5赋予一个字节,并把整数-1,0,2,5和4放在10字数组DATA_LIST的头5个单元中.
然后,写出完整的代码段,其功能为:把DATA_LIST中头5个数中的最大值和最小值分别存入MAX和MIN单元中.
37.
给出等值语句如下:ALPHAEQU100BETAEQU25GAMMAEQU2下列表达式的值是多少⑴ALPHA*100+BETA⑵ALPHAMODGAMMA+BETA⑶(ALPHA+2)*BETA-2⑷(BETA/3)MOD5⑸(ALPHA+3)*(BETAMODGAMMA)⑹ALPHAGEGAMMA⑺BETAAND7⑻GAMMAOR338.
对于下面的数据定义,三条MOV指令分别汇编成什么(可用立即数方式表示)TABLEADW10DUP()TABLEBDB10DUP()TABLECDB'1234'MOVAX,LENGTHTABLEAMOVBL,LENGTHTABLEBMOVCL,LENGTHTABLEC39.
对于下面的数据定义,各条MOV指令单独执行后,有关寄存器的内容是什么FLDBDBTABLEADW20DUP()TABLEBDB'ABCD'⑴MOVAX,TYPEFLDB⑵MOVAX,TYPETABLEA⑶MOVCX,LENGTHTABLEA⑷MOVDX,SIZETABLEA⑸MOVCX,LENGTHTABLEB40.
已知SS=0FFA0H,SP=00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指令,试画出堆栈区和SP内容变化的过程示意图.
(标出存储单元的地址)41.
试分析下列程序段:ADDAX,BXJNCL2SUBAX,BXJNCL3JMPSHORTL5如果AX、BX的内容给定如下:AXBX(1)14C6H80DCH(2)B568H54B7H问该程序在上述情况下执行后,程序转向何处42.
下列语句在存储器中分别为变量分配多少字节空间并画出存储空间的分配图.
VAR1DB10,2VAR2DW5DUP(),0VAR3DB'HOWAREYOU','$'VAR4DD-1,1,043.
假定VAR1和VAR2为字变量,LAB为标号,试指出下列指令的错误之处.
(1)ADDVAR1,VAR2(2)SUBAL,VAR1(3)JMPLAB[SI](4)JNZVAR144.
对于下面的符号定义,指出下列指令的错误.
A1DBA2DB10K1EQU1024(1)MOVK1,AX(2)MOVA1,AX(3)CMPA1,A2(4)K1EQU204845.
测试ALPHA字节变量单元中的ASCII码字符,进行如下操作:(1)若为数字字符,送入NUM字节单元中,置标记FLAG为0.
(2)若为大写字母字符,送入BIGCHR字节单元中,置标记FLAG为0.
(3)若为小写字母字符,送入SMMHR字节单元中,置标记FLAC为0.
(4)否则,置标记FLAG为1.
画出程序功能流程图并编写出程序段.
46.
设在变量单元A、B和C中存放有三个数,若三个数都不为0,则求出三个数之和存入D中;若有一个为0,则将其它两个单元也清零,请编写此程序段.
47.
试编写一段程序,要求比较数组ARRAY中的三个16位有符号数.
根据比较结果,置FLAG标志,并画出程序功能流程图.
(1)如果三个数都不相等,则FLAG为零.
(2)如果三个数有两个相等,则FLAG为1.
(3)如果三个数全相等,则FLAG为2.
48.
已知在以BUF1为首址的数据区存放了N个字节数据,编制程序完成将数据块搬家至BUF2为首址的存储区中,要求:(1)用一般数据传送指令MOV实现;(2)用数据串传送指令MOVSB实现;(3)用数据串指令LODSB/STOSB实现.
49.
已知有256个字节整数al,a2,a3,…,an存放在以NUMBER为首址的数据区中.
编一程序将其中的负数去除后,将剩下的正数重新顺序存放在以PLUS开始的数据区中.
50.
定义一数组GRADE存放有100个学生某门功课的考试成绩,要求编一程序,统计各分数段的人数.
即要求统计0-11分,80-89分,70-79分,60-69分以及60分以下各有多少人.
51.
请画出将一字节二进制数据转化成十六进制数并显示的流程图.
52.
编写一个菜单选择处理程序.
53.
编写一子程序实现从某字数组中选出最大值.
54.
编写在屏幕上显示字符串'THISISTEXTDISPLAYPROGRAM.
'的程序.
55.
试编程序,统计由40000H开始的16K个单元中所存放的字符"A"的个数,并将结果存放在DX中.
56.
编写程序,接收从键盘输入的10个十进制数字,输入中遇见回车符则停止输入,经过各个数加6处理,以16进制数显示在屏幕上.
mineserver怎么样?mineserver是一家国人商家,主要提供香港CN2 KVM VPS、香港CMI KVM VPS、日本CN2 KVM VPS、洛杉矶cn2 gia端口转发等服务,云服务器网(yuntue.com)介绍过几次,最近比较活跃。现在新推出了3款特价KVM VPS,性价比高,香港CMI/洛杉矶GIA VPS,2核/2GB内存/20GB NVME/3.5TB流量/200Mbps...
说明一下:gcorelabs的俄罗斯远东机房“伯力”既有“Virtual servers”也有“CLOUD SERVICES”,前者是VPS,后者是云服务器,不是一回事;由于平日大家习惯把VPS和云服务器当做一回事儿,所以这里要特别说明一下。本次测评的是gcorelabs的cloud,也就是云服务器。 官方网站:https://gcorelabs.com 支持:数字加密货币、信用卡、PayPal...
物语云计算怎么样?物语云计算(MonogatariCloud)是一家成立于2016年的老牌国人商家,主营国内游戏高防独服业务,拥有多家机房资源,产品质量过硬,颇有一定口碑。本次带来的是特惠活动为美国洛杉矶Cera机房的不限流量大带宽VPS,去程直连回程4837,支持免费安装Windows系统。值得注意的是,物语云采用的虚拟化技术为Hyper-v,因此并不会超售超开。一、物语云官网点击此处进入物语云...
热刺2-1迎新年首胜为你推荐
现有新的ios更新可用请从ios14be苹果xr可不可以更新ios14搜狗360360影视大全怎样免费看大片重庆电信断网重庆电信的最近是怎么回事啊!老断网googlepr值怎样提高谷歌PR值cisco2960cisco2960接入层交换机特朗普吐槽iPhone华为余承东吐槽iPhone X,除了贵啥优点都没有支付宝注册网站在哪里注册支付宝ipad代理想买个ipad买几代性价比比较高期刊eset的是cuteftp
租服务器价格 本网站服务器在美国维护 webhostingpad mediafire 香港机房托管 12306抢票攻略 权嘉云 日本bb瘦 韩国名字大全 域名接入 美国在线代理服务器 微软服务器操作系统 360云服务 徐州电信 免费网络空间 买空间网 创速 镇江高防服务器 apache启动失败 gotoassist 更多