- 1、本文档共82页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
存储单元地址编码与存储单元中的内容是两个不同的概念,存储单元地址编码的长度由存储器芯片所包含的存储单元的个数决定。例如,6264存储器芯片含有8K个(13根地址线)存储单元,地址编码为0 0000 0000 0000B~1 1111 1111 1111B(用十六进制表示时,地址编码为0000H~1FFFH),每个存储单元长度为8位。因此,每个存储单元的内容可以是00H~FFH之间的二进制数。又如,图1-3中的62256存储器含有32K个(15根地址线)存储单元,地址编码为000 0000 0000 0000B~111 1111 1111 1111B(用十六进制表示时,地址编码为0000H~7FFFH),每个存储单元的长度也是为8位,图中0000H单元内容为12H,0001H单元内容为23H,而0002H单元内容为0A5H。PIC16C56单片机程序存储器容量为1K×12bit,因此存储单元地址编码为00 0000 0000B~11 1111 1111B(用十六进制表示时,地址编码为000H~3FFH),每个存储单元长度为12位。因此,每个存储单元的内容可以是000H~FFFH之间的二进制数。 2) 存储器工作状态 表1-1 存储器工作状态 工作模式 控 制 信 号 输 出 片选信号 输出允许 写允许信号 读 L L H 数据输出 输出禁止 L H H 高阻态 待用(功率下降) H × × 高阻态 写入 L H L 数据输入 3) 存储器读操作 图1-4 CPU读取存储器操作过程示意图 (1) ?CPU地址寄存器AR给出将要读取的存储单元地址信息,即0000H。 (2) 存储单元地址信息通过地址总线A15~A0输入到存储器芯片地址线上(CPU地址总线与存储器地址总线相连)。 (3) 存储器芯片内的地址译码器对存储器地址信号A14~A0进行译码,并选中0000H单元。 (4) CPU给出读控制信号(接存储器的端),将选中的0000H存储单元内容输出到数据总线D7~D0(存储器数据总线与CPU数据总线相连),结果0000H单元的内容12H就通过存储器数据总线输入到CPU内部的数据寄存器DR中,然后送到CPU内部某一特定寄存器或暂存器内,这样便完成了存储器的读操作过程。 4) 存储器写操作 (1) CPU地址寄存器AR给出待写入的存储单元的地址编码,如0003H,通过地址总线A15~A0输入到存储器芯片地址线A14~A0上。 (2) 存储器芯片内的地址译码器对存储器地址信号线A14~A0进行译码,并选中0003H单元。 (3) 在写操作过程中,写入的数据55H存放在CPU内部的数据寄存器DR中,当CPU写控制信号有效时(与存储器写允许信号相连),DR寄存器中的内容55H就通过数据总线D7~D0传输到存储器中被选中的0003H存储单元,结果0003H单元的内容即刻变为55H,完成了存储器的写操作过程。 1.2.2 指令及指令系统 1. 指令及指令系统 将CPU所执行的各种操作,如从指定的存储器单元中取数据、将CPU内特定寄存器内容写入存储器某一指定的存储单元中以及算术或逻辑运算等操作,用命令的形式记录下来,就称为指令(Instruction),一条指令与计算机的一种基本操作相对应。当然,指令也只能用二进制代码表示,例如在MCS-51系列单片机中,累加器A中的内容除以寄存器B中的内容(即A÷B)的操作用84H作为指令代码。 为使计算机能够准确理解和执行指令所规定的动作,不同操作对应的指令要用不同的指令代码表示,或者说,不同的指令代码表示不同的操作。例如,在MCS-51系列单片机中,“E4H”表示将累加器Acc清零;“F4H”表示将累加器Acc内容按位取反;又如,用“74H xxH”表示将立即数“xxH”传送到累加器Acc中(这条指令占用两个字节,其中“74H”表示将立即数传送到累加器Acc中,是操作码;而xxH就是要传送的立即数)。在计算机中,所有指令的集合称为指令系统。 一条指令通常由操作码和操作数两部分组成:操作码(Operation code)决定了指令要执行的动作,一般用一个字节表示,除非指令数目很多,才需要用两个字节表示(用一个字节表示指令操作码时,最多可以表示256种操作,即256条指令,一般已足够,计算机系统所包含的指令数目并不很多,尤其是单片机系统,如PIC16系列单片机系统仅含有几十条指令);而操作数(Operand)指定了参加操作的数据或数据所在的存储单元的地址。 不同计算机指令系统所包含的指令种类、数目
文档评论(0)