微狺小程序教程

微狺小程序教程,第1张

首先,需要申请账号

根据指引填写信息和提交相应的资料,就可以拥有自己的小程序帐号。

登录之后我们可以在菜单 “设置”-“开发设置” 看到小程序的 AppID 了 。小程序的 AppID 相当于小程序平台的一个身份z,后续你会在很多地方要用到 AppID (注意这里要区别于服务号或订阅号的 AppID)。然后还需要个工具来开发小程序。

其次,安装开发工具。

前往 开发者工具下载页面 ,根据自己的 *** 作系统下载对应的安装包进行安装,

打开小程序开发者工具,用微信扫码登录开发者工具。

然后,新建项目选择小程序项目,选择代码存放的硬盘路径,填入刚刚申请到的小程序的 AppID,给你的项目起一个好听的名字,最后,勾选 "创建 QuickStart 项目" ,点击确定,你就得到了你的第一个小程序了,点击顶部菜单编译就可以在微信开发者工具中预览你的第一个小程序。

最后,编译预览

点击工具上的编译按钮,可以在工具的左侧模拟器界面看到这个小程序的表现,也可以点击预览按钮,通过微信的扫一扫在手机上体验你的第一个小程序。

简单吧

在微指令的控制字段中,每一位代表一个微命令,在设计微指令时,是否发出某个微命令,只要将控制字段中相应位置成"1"或"0",这样就可打开或关闭某个控制门,这就是直接控制法.

在6.3节中所讲的就是这种方法.但在某些复杂的计算机中,微命令甚至可多达三四百个,这使微指令字长达到难以接受的地步,并要求机器有大容量控制存储器,为了改进设计出现了以下各种编译法.

6.4.1 微指令的编译法(编码译码方法)(2)

2.字段直接编译法

在计算机中的各个控制门,在任一微周期内,不可能同时被打开,而且大部分是关闭的(相应的控制位为"0").所谓微周期,指的是一条微指令所需的执行时间.如果有若干个(一组)微命令,在每次选择使用它们的微周期内,只有一个微命令起作用,那么这若干个微命令是互斥的.

例如,向主存储器发出的读命令和写命令是互斥的又如在ALU部件中,送往ALU两个输入端的数据来源往往不是唯一的,而每个输入端在任一微周期中只能输入一个数据,因此控制该输人门的微命令是互斥的.

选出互斥的微命令,并将这些微命令编成一组,成为微指令字的一个字段,用二进制编码来表示, 就是字段直接编译法.

6.4.1 微指令的编译法(编码译码方法)(3)

例如,将7个互斥的微命令编成一组,用三位二进制码分别表示每个微命令,那么在微指令中,该字段就从7位减成3位,缩短了微指令长度.而在微指令寄存器的输出端,为该字段增加一个译码器,该译码器的输出即为原来的微命令.

6.4.1 微指令的编译法(编码译码方法)(4)

字段长度与所能表示的微命令数的关系如下:

字段长度 微命令数

2位 2~3

3位 4~7

4位 8~15

一般每个字段要留出一个代码,表示本段不发出任何微命令,因此当字段长度为3位时,最多只能表示7个互斥的微命令,通常代码000表示不发微命令.

6.4.1 微指令的编译法(编码译码方法)(5)

3.字段间接编译法

字段间接编译法是在字段直接编译法的基础上,进一步缩短微指令字长的一种编译法.

如果在字段直接编译法中,还规定一个字段的某些微命令,要兼由另一字段中的某些微命令来解释,称为字段间接编译法.

本方法进一步减少了指令长度,但很可能会削弱微指令的并行控制能力,因此通常只作为直接编译法的一种辅助手段.

6.4.1 微指令的编译法(编码译码方法)(6)

字段A(3位)的微命令还受字段B控制,当字段B发出b1微命令时,字段A发出a1,1,a1,2,…,a1,7中的一个微命令而当字段B发出b2微命令时,字段A发出a2,1,a2,2,…,a2,7中的一个微命令,仅当A为000时例外,此时什么控制命令都不产生.

6.4.1 微指令的编译法(编码译码方法)(7)

4.常数源字段E

在微指令中,一般设有一个常数源字段E就如指令中的直接 *** 作数一样.E字段一般仅有几位,用来给某些部件发送常数,故有时称为发射字段.

该常数有时作为 *** 作数送入ALU运算有时作为计算器初值,用来控制微程序的循环次数等.

6.4.2 微程序流的控制 (1)

当前正在执行的微指令,称为现行微指令,现行微指令所在的控制存储器单元的地址称现行微地址,现行微指令执行完毕后,下一条要执行的微指令称为后继微指令,后继微指令所在的控存单元地址称为后继微地址.

所谓微程序流的控制是指当前微指令执行完毕后,怎样控制产生后继微指令的微地址.

与程序设计相似,在微程序设计中除了顺序执行微程序外还存在转移功能和微循环程和微子程序等,这将影响下址的形成.

下面介绍几种常见的产生后继微指令地址的方法.

6.4.2 微程序流的控制 (2)

(1)以增量方式产生后继微地址.

在顺序执行微指令时,后继微地址由现行微地址加上一个增量(通常为1)形成的而在非顺序执行时则要产生一个转移微地址.

机器加电后执行的第一条微指令地址(微程序入口)来自专门的硬件电路,控制实现取令 *** 作,然后由指令 *** 作码产生后继微地址.接下去,若顺序执行微指令,则将现行微地址主微程序计数器( PC中)+1产生后继微地址若遇到转移类微指令,则由 PC与形成转移微地址的逻辑电路组合成后继微地址.

6.4.2 微程序流的控制 (3)

6.4.2 微程序流的控制 (4)

(2)增量与下址字段结合产生后继微地址

将微指令的下址字段分成两部分:转移控制字段BCF和转移地址字段BAF,当微程序实现转移时,将BAF送 PC,否则顺序执行下一条微指令( PC+1).

执行微程序条件转移时,决定转移与否的硬件条件有好几种.例如,"运算结果为零","溢出","已完成指定的循环次数"等.

我们假设有八种转移情况,定义了八个微命令(BCF取3位),在图中设置计数器CT用来控制循环次数.如在执行乘(或除)法指令时,经常采用循环执行"加,移位"(或减,移位)的方法,指令开始执行时,在CT中置循环次数)每执行一次循环,计数器减1,当计数器为零时结束循环.又考虑到执行微子程序时,要保留返回微地址,因此图中设置了一个返回寄存器RR.

微程序控制的基本思想,就是仿照通常的解题程序的方法,把 *** 作控制信号编成所谓的“微指令”,存放到一个只读存储器里.当机器运行时,一条又一条地读出这些微指令,从而产生全机所需要的各种 *** 作控制信号,使相应部件执行所规定的 *** 作 .

采用微程序控制方式的控制器称为微程序控制器。所谓微程序控制方式是指微命令不是由组合逻辑电路产生的,而是由微指令译码产生。一条机器指令往往分成几步执行,将每一步 *** 作所需的若干位命令以代码形式编写在一条微指令中,若干条微指令组成一段微程序,对应一条机器指令。在设计CPU时,根据指令系统的需要,事先编制好各段微程序 ,且将它们存入一个专用存储器(称为控制存储器)中。微程序控制器由指令寄存器IR、程序计数器PC、程序状态字寄存器PSW、时序系统、控制存储器CM、微指令寄存器以及微地址形成电路。微地址寄存器等部件组成。执行指令时,从控制存储器中找到相应的微程序段,逐次取出微指令,送入微指令寄存器,译码后产生所需微命令,控制各步 *** 作完成


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11518260.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存