研发埠

标题: 若SP=60H,标号LABEL所在的地址为3456H。LCALL指令的地址为2000H,执行指令如下: 2000H LCALL LABEL后,堆栈指针SP和堆栈内容发生了什么变化?PC的值等于什么?如果将指令LCALL 直接换成ACALL是否可以?如果换成ACALL指令,可调用的地址范围是什么? [打印本页]

作者: 王志勇    时间: 2013-4-9 14:33
标题: 若SP=60H,标号LABEL所在的地址为3456H。LCALL指令的地址为2000H,执行指令如下: 2000H LCALL LABEL后,堆栈指针SP和堆栈内容发生了什么变化?PC的值等于什么?如果将指令LCALL 直接换成ACALL是否可以?如果换成ACALL指令,可调用的地址范围是什么?

作者: 独立显卡    时间: 2013-4-9 14:56
1)堆栈指针SP和堆栈内容发生了如下变化:SP=SP+1=61H(61H)=PC的低字节=03HSP=SP+1=62H(62H)=PC的高字节=20H2)PC=3456H3)可以将指令LCALL直接换成ACALL。4)换成ACALL指令后,可调用的地址范围是2KB=2048 Byte。




欢迎光临 研发埠 (http://bbs.yanfabu.com/) Powered by Discuz! X3.2