正在加载图片...
202 编码的奥秘 China-pub.com 下 利用这个子程序完成25h与12h相乘的程序用下面的代码: MOV B 25h CALL Multiply Call指令把PC的值保存在堆栈中,该值是Cal指令的下一条指令的地址。然后,Ca指令 使程序转移到标号 Multiply所标识的指令,即子程序的开始。当子程序计算完结果后,执行 RET(返回)指令,即从堆栈中弹出程序计数器的值,程序继续执行Call指令后面的语句。 8080指令集中包括条件CALL指令和条件 Return指令,但它们远不如条件转移指令用得多 下表中完整地列出了这些指令 条件 操作码指令 操作码 指令 操作码 指令 None RET C3JMP aaaa cd CALL aaaa z not set cO RNZ C2 JNZ aaaa C4 cNZ aaaa z set ca JZ aaaa cccC aaaa C not set RNC D2 JNC aaaa D4 CNC aaaa C set D8 RC Da JC aaaa Dc cc aaaa Odd parity RPO E2JP0 aaaa E4CPO aaaa Even parity RPE a JPE aaaa Ec cpe aaaa s not set FO RP F2 JP aaaa f4 CP aaaa s set FA JM aaaa Fc CM aaaa 你可能知道,存储器并不是唯一连接在微处理器上的设备。一个计算机系统通常需要输 入输出设备以便于实现人机通信。输入输出设备通常包括键盘和显示器。 微处理器是怎样与外围设备(对于连接到微处理器而不是存储器的东西的称呼)进行通信的 呢?外围设备具有与存储器相似的接口,微处理器可通过对应于外设的具体地址来对外设进 行读写。在有些微处理器中,外围设备实际上占用了通常用来寻址存储器的地址,这种配置 叫作内存映像IO。然而在8080中,在65536个正常地址外还有256个附加地址专门为输入输 出设备预留,这些就是IO端口(I/ O Port)。/O地址信号为A。A,但I/O访问与存储器访问 不同,由8228系统控制芯片锁存的信号来区分 OUT指令用于把累加器中的数据写到紧跟该指令的字节所寻址的IO端口中。IN指令把端 口的数据读入到累加器中 操作码指令 外围设备有时需要引起微处理器的注意。例如,当你在键盘上按键时,如果微处理器能 马上知道这件事通常是有帮助的。这由称作中断( Interrupt)的机制来完成,这是连接至202 编码的奥秘 下载 利用这个子程序完成2 5 h与1 2 h相乘的程序用下面的代码: MOV B, 25h MOV C, 12h CALL Multiply C a l l指令把P C的值保存在堆栈中,该值是 C a l l指令的下一条指令的地址。然后, C a l l指令 使程序转移到标号 M u l t i p l y所标识的指令,即子程序的开始。当子程序计算完结果后,执行 R E T(返回)指令,即从堆栈中弹出程序计数器的值,程序继续执行 C a l l指令后面的语句。 8 0 8 0指令集中包括条件C A L L指令和条件R e t u r n指令,但它们远不如条件转移指令用得多。 下表中完整地列出了这些指令: 你可能知道,存储器并不是唯一连接在微处理器上的设备。一个计算机系统通常需要输 入输出设备以便于实现人机通信。输入输出设备通常包括键盘和显示器。 微处理器是怎样与外围设备 (对于连接到微处理器而不是存储器的东西的称呼 )进行通信的 呢?外围设备具有与存储器相似的接口,微处理器可通过对应于外设的具体地址来对外设进 行读写。在有些微处理器中,外围设备实际上占用了通常用来寻址存储器的地址,这种配置 叫作内存映像I / O。然而在8 0 8 0中,在65 536个正常地址外还有 2 5 6个附加地址专门为输入输 出设备预留,这些就是 I / O端口(I/O Port)。I / O地址信号为A0~A7,但I / O访问与存储器访问 不同,由8 2 2 8系统控制芯片锁存的信号来区分。 O U T指令用于把累加器中的数据写到紧跟该指令的字节所寻址的 I / O端口中。I N指令把端 口的数据读入到累加器中。 操作码 指令 D 3 OUT PP D B IN PP 外围设备有时需要引起微处理器的注意。例如,当你在键盘上按键时,如果微处理器能 马上知道这件事通常是有帮助的。这由称作中断(i n t e r r u p t)的机制来完成,这是连接至 条件 操作码 指令 操作码 指令 操作码 指令
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有