单片机课后标准答案详解
3.20、1.使20H单元中数的高两位变为0,其余位不变 2.使20H单元中数的高两位变为1,其余位不变 3.使20H单元中数的高两位变反,其余位不变 4.使20H单元中数的所有位变反。 解:
ANL 20H,#3FH; ORL 20H,#0C0H; XRL 20H,#0C0H; XRL 20H,#0FFH;
3.26、已知SP=70H,MA=2000H,SUBPR=4046H.试问如下三种程序中哪些是正确的,为什么?哪些程序最好,为什么?若SUBPR=2060H,则哪一个程序最好,为什么? 解:
若SP=70H,MA=2000H,SUBPR=4060H,则:程序①错误,因为MA和SUBR间的距离超过2KB;程序②、③都正确,但程序③更好,因为程序③的字节数少、速度快且结构清晰。
若SP=70H,MA=2000H,SUBPR=2060H,则:程序②错误,程序①、③正确,但程序①最好,因为程序①的字节数少且能生成浮动代码。
第四章
4.2、在汇编语言程序设计中,为什么要采用标号来表示地址?标号的构成原则是什么?使用标号有什么限制?注释段起什么作用?
解:用标号表示指令的地址是便于在转移指令中书写转移到的指令位置,避免手工计算偏移量或指令的实际地址。
标号的构成原则:以大写英文字母开头的&#