正在加载图片...
Chinaopub.com 第7章自动果作159 下载 法器的进位输入为1。任何时候进行多字节数加法运算时,不管是否必要,都应该用进位加法 指令计算。为正确编码前面列出的16位加法,可用如下所示方法: “代码” “数据 低字节结果 11h Stm 高字节结果 不管是什么样的数,该方法都能正确工作。 有了这两个新的操作码,极大地扩展了机器处理的范围,使其不再只局限于进行8位数加 。重复使用进位加法指令,能进行16位数、24位数、32位数、40位数等更多位数的加法 假设要把32位数7A892BCDh与65A872FFh相加,则需要一个加法指令及三个进位加法指 数据 IOoth: h Lmd mmh:I Cph Ah sr 11h Strom 低字节结果 Dh Imd 2.h h地 d with CurryT2h 11h Trmm 次高字节结果 lh Lnd 89h hJd with Carry阻h 11h Strm 次高字节结果 l1h Strum 最高字节结果 shAlt 当然,把这些数存放到存储器中并非真的很好。这不仅要用开关来表示二进制数,而且 数在存储器中的地址也并不连续。例如,7A892BCDh从最低有效字节开始,每个字节分别存 入存储器地址0000h、0003h、0006h及0009h中。为了得到最终结果,还必须检查地址0002h 0005h、0008h及000Bh中的数。 此外,当前设计的自动加法器不允许在随后的计算中重复利用计算结果。假设要把3个8 位数加起来,然后再在和中减去一个8位数,并且存储结果。这需要一次装载操作、两次加法 操作、一次减法和一次保存操作。但如果想从原先的和中减去另外一个数会怎么样呢?那个 和是不能访问的,每次用到它时都要重新计算。 原因在于我们已经建造了一个自动加法器,其中的代码RAM和数据RAM阵列同时、顺 序地从0000h开始寻址。代码RAM中的每条指令对应于数据RAM中相同地址的存储单元法器的进位输入为1。任何时候进行多字节数加法运算时,不管是否必要,都应该用进位加法 指令计算。为正确编码前面列出的 1 6位加法,可用如下所示方法: 不管是什么样的数,该方法都能正确工作。 有了这两个新的操作码,极大地扩展了机器处理的范围,使其不再只局限于进行 8位数加 法。重复使用进位加法指令,能进行 1 6位数、2 4位数、3 2位数、4 0位数等更多位数的加法运 算。假设要把3 2位数7 A 8 9 2 B C D h与6 5 A 8 7 2 F F h相加,则需要一个加法指令及三个进位加法指 令: 当然,把这些数存放到存储器中并非真的很好。这不仅要用开关来表示二进制数,而且 数在存储器中的地址也并不连续。例如, 7 A 8 9 2 B C D h从最低有效字节开始,每个字节分别存 入存储器地址0 0 0 0 h、0 0 0 3 h、0 0 0 6 h及0 0 0 9 h中。为了得到最终结果,还必须检查地址 0 0 0 2 h、 0 0 0 5 h、0 0 0 8 h及0 0 0 B h中的数。 此外,当前设计的自动加法器不允许在随后的计算中重复利用计算结果。假设要把 3个8 位数加起来,然后再在和中减去一个 8位数,并且存储结果。这需要一次装载操作、两次加法 操作、一次减法和一次保存操作。但如果想从原先的和中减去另外一个数会怎么样呢?那个 和是不能访问的,每次用到它时都要重新计算。 原因在于我们已经建造了一个自动加法器,其中的代码 R A M和数据 R A M阵列同时、顺 序地从0 0 0 0 h开始寻址。代码 R A M中的每条指令对应于数据 R A M中相同地址的存储单元。一 第17章 自 动 操 作 159 下载 “代码” “数据” “代码” 数据 低字节结果 次高字节结果 次高字节结果 最高字节结果 低字节结果 高字节结果
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有