3.4 算术运算类指令(练习)-《单片机技术与应用》(高教版第二版) 同步精品课堂
|
2份
|
11页
|
68人阅读
|
1人下载
内容正文:
算术运算类指令
一、名词解释
1. 算术运算类指令
2. 十进制调整指令
二、单项选择题
1. 算术运算类指令中,不影响进位标志 CY半进位标志 AC溢出标志 OV 的是( )
A. 加法指令
B. 带进位加法指令
C. 加 1 和减 1 指令
D. 乘除指令
2. 在加法指令 “ADD A,#data” 中,操作结果保存在( )
A. 累加器 A
B. Rn 寄存器
C. @Ri 所指单元
D. direct 所指单元
3. 若加法运算中 D7 有进位,则( )
A. CY = 1
B. AC = 1
C. OV = 1
D. P = 1
4. 在带借位减法指令中,要实现不带借位减法的功能,应在 “SUBB” 指令前加( )
A. “SETB C”
B. “CLR C”
C. “MOV C,0”
D. 以上都不对
5. 乘法指令执行后,进位标志 CY( )
A. 总为 0
B. 总为 1
C. 不确定
D. 由乘积决定
6. 除法指令中,若除数 B 中的内容为 0,溢出标志 OV( )
A. 被清 0
B. 被置 1
C. 不变
D. 由被除数决定
7. 加 1 指令 “INC @Ri” 的功能是( )
A. 将 Ri 的内容加 1
B. 将 @Ri 所指单元的内容加 1
C. 将累加器 A 的内容加 1
D. 将 direct 所指单元的内容加 1
8. 减 1 指令 “DEC direct” 的字节数和机器周期数分别是( )
A. 1,1
B. 1,2
C. 2,1
D. 2,2
9. 十进制调整指令 “DA A” 不能对( )进行十进制调整。
A. 加法
B. 减法
C. 乘法
D. 除法
10. 若累加器低 4 位大于 9 或辅助进位位 AC = 1,则十进制调整指令对累加器进行( )修正。
A. 低 4 位加 6
B. 高 4 位加 6
C. 高 4 位和低 4 位分别加 6
D. 不做修正
三、判断题
1. 算术运算类指令的加减法运算结果只影响进位标志 CY。( )
2. 加法指令中,被加数总是累加器 A,相加结果也保存在累加器 A 中。( )
3. 乘法指令执行后,进位标志 CY 和溢出标志 OV 都被清 0。( )
4. 加 1 和减 1 指令会影响进位标志 CY. 半进位标志 AC. 溢出标志 OV。( )
5. 十进制调整指令 “DA A” 可以对减法进行十进制调整。( )
四、简答题
1. 简述算术运算类指令的分类及主要功能。
2. 说明加法指令和带进位加法指令对标志位的影响规则。
3. 阐述十进制调整指令 “DA A” 的修正方法及使用注意事项。
·
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
算术运算类指令
一、名词解释
1. 算术运算类指令
【答案】算术运算类指令共有 24 条,包括加法指令、带进位加法指令、带借位减法指令、加 1 指令、减 1 指令、乘除指令及十进制调整指令,主要完成加、减、乘、除运算,以及增量、减量和二 - 十进制调整操作。
2. 十进制调整指令
【答案】用于对十进制数 BCD 码加法运算结果的内容修正,两个 BCD 码相加之后,必须经本指令的调整才能得到正确的结果,指令格式为 DA A 。
二、单项选择题
1. 算术运算类指令中,不影响进位标志 CY半进位标志 AC溢出标志 OV 的是( )
A. 加法指令
B. 带进位加法指令
C. 加 1 和减 1 指令
D. 乘除指令
【答案】C
【解析】加减法运算结果将影响 CY、AC、OV,乘除运算只影响 CY、OV,只有加 1 和减 1 指令不影响这三种标志,所以选 C。
2. 在加法指令 “ADD A,#data” 中,操作结果保存在( )
A. 累加器 A
B. Rn 寄存器
C. @Ri 所指单元
D. direct 所指单元
【答案】A
【解析】加法指令这组指令被加数总是累加器 A,相加结果保存在累加器 A 中,“ADD A,#data” 的操作功能是 A←(A)+data,所以选 A。
3. 若加法运算中 D7 有进位,则( )
A. CY = 1
B. AC = 1
C. OV = 1
D. P = 1
【答案】A
【解析】加法运算规则中,如果 D7 有进位,则 CY = 1,否则 CY = 0,所以选 A。
4. 在带借位减法指令中,要实现不带借位减法的功能,应在 “SUBB” 指令前加( )
A. “SETB C”
B. “CLR C”
C. “MOV C,0”
D. 以上都不对
【答案】B
【解析】在 MCS - 51 指令系统中没有提供不带借位减法指令,但在 “SUBB” 指令前加一条 “CLR C” 指令,先将 CY 清 0,即可实现不带借位减法的功能,所以选 B。
5. 乘法指令执行后,进位标志 CY( )
A. 总为 0
B. 总为 1
C. 不确定
D. 由乘积决定
【答案】A
【解析】乘法指令执行后进位标志 CY 总为 0,所以选 A。
6. 除法指令中,若除数 B 中的内容为 0,溢出标志 OV( )
A. 被清 0
B. 被置 1
C. 不变
D. 由被除数决定
【答案】B
【解析】除法指令中,若除数 B 中的内容为 0,溢出标志 OV 被置 1,即 OV = 1,而 CY 仍为 0,所以选 B。
7. 加 1 指令 “INC @Ri” 的功能是( )
A. 将 Ri 的内容加 1
B. 将 @Ri 所指单元的内容加 1
C. 将累加器 A 的内容加 1
D. 将 direct 所指单元的内容加 1
【答案】B
【解析】加 1 指令 “INC @Ri” 的操作功能是 (Ri)←((Ri))+1,即将 @Ri 所指单元的内容加 1,所以选 B。
8. 减 1 指令 “DEC direct” 的字节数和机器周期数分别是( )
A. 1,1
B. 1,2
C. 2,1
D. 2,2
【答案】D
【解析】减 1 指令 “DEC direct” 的字节数是 2,机器周期数是 2,所以选 D。
9. 十进制调整指令 “DA A” 不能对( )进行十进制调整。
A. 加法
B. 减法
C. 乘法
D. 除法
【答案】B
【解析】DA 指令不能对减法进行十进制调整,做减法运算时,可采用十进制补码相加,然后用 DA A 指令进行调整,所以选 B。
10. 若累加器低 4 位大于 9 或辅助进位位 AC = 1,则十进制调整指令对累加器进行( )修正。
A. 低 4 位加 6
B. 高 4 位加 6
C. 高 4 位和低 4 位分别加 6
D. 不做修正
【答案】A
【解析】十进制调整指令修正方法中,累加器低 4 位大于 9 或辅助进位位 AC = 1,则进行低 4 位加 6 修正,所以选 A。
三、判断题
1. 算术运算类指令的加减法运算结果只影响进位标志 CY。( )
【答案】×
【解析】加减法运算结果将影响进位标志 CY. 半进位标志 AC. 溢出标志 OV,所以该说法错误。
2. 加法指令中,被加数总是累加器 A,相加结果也保存在累加器 A 中。( )
【答案】√
【解析】加法指令这组指令被加数总是累加器 A,相加结果保存在累加器 A 中,所以该说法正确。
3. 乘法指令执行后,进位标志 CY 和溢出标志 OV 都被清 0。( )
【答案】×
【解析】乘法指令执行后进位标志 CY 总为 0,若乘积大于 FFH (255),则溢出标志 OV 置 1,否则 OV 清 0,所以该说法错误。
4. 加 1 和减 1 指令会影响进位标志 CY. 半进位标志 AC. 溢出标志 OV。( )
【答案】×
【解析】只有加 1 和减 1 指令不影响进位标志 CY. 半进位标志 AC. 溢出标志 OV,所以该说法错误。
5. 十进制调整指令 “DA A” 可以对减法进行十进制调整。( )
【答案】×
【解析】DA 指令不能对减法进行十进制调整,做减法运算时,可采用十进制补码相加,然后用 DA A 指令进行调整,所以该说法错误。
四、简答题
1. 简述算术运算类指令的分类及主要功能。
【答案】算术运算类指令共有 24 条,分类及主要功能如下:
· 加法指令. 带进位加法指令:完成加法运算,被加数总是累加器 A,相加结果保存在累加器 A 中。
· 带借位减法指令:从累加器 A 中减去指定变量及借位位 CY 的值,差值存放在累加器 A 中。
· 加 1 指令:把操作数指定单元的内容加 1,除奇偶标志外,操作结果不影响 PSW 中的标志位。
· 减 1 指令:将操作数指定单元的内容减 1,除奇偶标志外,操作结果不影响 PSW 的标志位。
· 乘除指令:乘法指令完成累加器 A 和寄存器 B 中两个 8 位无符号数的相乘;除法指令完成累加器 A 中的 8 位无符号整数除以寄存器 B 中的 8 位无符号整数。
· 十进制调整指令:用于对十进制数 BCD 码加法运算结果的内容修正。
2. 说明加法指令和带进位加法指令对标志位的影响规则。
【答案】加法指令和带进位加法指令对标志位的影响规则如下:
· 进位标志 CY:如果 D7 有进位,则 CY = 1,否则 CY = 0。
· 半进位标志 AC:如果 D3 有进位,则 AC = 1,否则 AC = 0。
· 溢出标志 OV:如果 D6 有进位,而 D7 没有进位,或者 D7 有进位,而 D6 没有进位,则 OV = 1,否则 OV = 0。
· 奇偶标志 P:如果相加结果在 A 中 1 的个数为奇数,则 P = 1,否则 P = 0。
3. 阐述十进制调整指令 “DA A” 的修正方法及使用注意事项。
【答案】修正方法如下:
· 累加器低 4 位大于 9 或辅助进位位 AC = 1,则进行低 4 位加 6 修正。
· 累加器高 4 位大于 9 或进位位 CY = 1,则进行高 4 位加 6 修正。
· 累加器高 4 位为 9,低 4 位大于 9,则高 4 位和低 4 位分别加 6 修正。
· 使用注意事项:DA 指令不能对减法进行十进制调整。做减法运算时,可采用十进制补码相加,然后用 DA A 指令进行调整。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$