所谓“回文”,是指读和倒读都一样的字符串,如“XYZYX”。......
2025-09-30
所谓查表法,就是对一些复杂的函数运算如sinx,x2+ex等,事先把全部可能范围的函数值按一定的规律编成表格存放在计算机的程序存储器中。当用户程序中需要用到这些函数时,直接按编排好的索引值寻找答案。这种方法既节省了运算步骤,简化了程序,而且加快了程序执行的速度。在控制应用场合或智能仪器仪表中,经常使用查表法。这种方法唯一的不足之处是需要事先计算好函数值,而且需要占用较多的存储单元。
为了实现查表功能,在MCS-51单片机中专门设置了两条查表指令:
第1条查表指令采用DPTR存放数据表格的地址,其查表过程比较简单。查表前需要把数据表的首地址存入到DPTR,然后把所查表的索引值送至累加器A,最后使用MOVC A,@A+DPTR指令完成查表。
采用第2条指令时,操作过程和第1条不同,其步骤可分为以下3步:
1)使用数据传送指令把所查数据的索引值送至累加器A。
2)用ADD A,#data指令对累加器A进行修正。data值由下式确定:
其中,PC是MOVC A,@A+PC的下一条指令的地址。因此,data值实际上等于查表指令和数据表格之间的字节数。
3)采用查表指令MOVC A,@A+PC完成查表。
为了方便查表,要求表中的数据或符号按照便于查表的次序排列,并将它存放在指定首地址开始的单元。函数值在表中的序号即索引值应该和函数值有直接的对应关系。函数值的存放地址等于首地址加上索引值。在实际使用中,使用MOVC A,@A+DPTR指令比MOVC A,@A+PC简单。
【例4-10】利用查表指令实现求取数据0~9的平方。设数据变量x的值存放于累加器A中,查表后求x2的值并反送回累加器中。
【编程说明】数据0~9的平方值存放在存储器中。在程序中TABLE的地址可以是16位二进制数决定的任意值,也就是说,理论上TABLE表可以放在程序存储器的任意空间。(https://www.chuimin.cn)
【程序】
如果不想采用MOVC A,@A+DPTR指令,还可改用MOVC A,@A+PC指令来实现。在这里,TABLE表将紧跟在子程序之后,考虑到MOVC A,@A+PC与TABLE表间有一条单字节的返回主程序RET(RET是单字节指令),所以程序起始时需要对累加器A的内容进行调整。程序中用INC A指令就是来调整的。
【程序】
【例4-11】某智能仪器的键盘程序中,根据命令的键值(0,1,2,…,6)转换成相应的双字节16位命令操作入口地址,其键值与对应的入口地址关系如表4-2所示。
表4-2 键值与对应的入口地址
设键值存放在片内RAM的20H单元中,入口地址存放在片内RAM的22H和23H中。
【程序】
相关文章
表3-5所示为数据转换指令,其中3位BCD码和7位BCD码的格式如图3-18所示。A I0.2 //如果I0.2为1L MD10 //将MD10中的双整数装入累加器1DTB //将累加器1中的数据转换为BCD码,结果仍在累加器1中图3-18 BCD码格式a)3位BCD码的格式 b)7位BCD码的格式JO OVER //运算结果超出允许范围则跳转到标号OVER处T MD20 //将转换结果传送到MD20A M4.0R M4.0 //复位溢出标志JU NEXT //无条件跳转到标号NEXT处OVER:AN M4.0S M4.0 //置位溢出标志NEXT:……......
2025-09-29
例4.1:为StudentInfo表建立主键约束。图4.13为表添加联合主键约束2.唯一约束唯一约束保证在一个字段或者一组字段里的数据与表中其他行的数据相比是唯一的。向表中增加字段可使用ADD关键字,语法与主键约束相似,增加约束的语句如下:3.默认约束为表添加默认值约束的语法为:默认值可以为常量或者为空。图4.14添加约束运行结果是检查约束没有创建成功,如图4.15所示。......
2025-09-30
由于不是所有的用户都习惯于用命令行程序,所以开发了GUI程序。下面就介绍一下SQLyog。SQLyog是业界著名的Webyog公司出品的一款简洁高效、功能强大的图形化MySQL数据库管理工具。使用SQLyog可以快速直观地让您从世界的任何角落通过网络来维护远端的MySQL数据库。图2.19SQLyog连接数据库进入管理界面,如图2.20所示。图2.22SQLyog查询视图结果视图,如图2.23所示。图2.23SQLyog结果视图数据库选择、常用工具栏,如图2.24所示。图2.25SQLyog菜单栏SQLyog常用技巧: Ctrl+Enter代码提示。......
2025-09-30
事实上,这有很多用处,但是如果需要从一些不同的MySQL服务器上聚合数据,其中有些服务器可能位于网络之外甚至归另外的公司所有,这时该怎么办?为缓解此问题,可以使用MySQL 5.0.3可用的FEDERATED存储引擎,创建远程表的本地指针。因为创建FEDERATED表的过程与其他表稍有不同,所以需要做一些补充解释。为此,在服务器B上创建一个相同的表结构,唯一的区别是该表引擎类型应当为FEDERATED,而不是MyISAM。减少连接管理的麻烦并不是FEDERATED表的唯一目的。......
2025-09-30
与HTML标记不同XML标记不会告诉浏览器如何按格式处理数据,而是使浏览器能识别数据。将LabVIEW数据转换成XML需要格式化的数据以便将数据保存到文件时,可以从描述数据的标记方便地识别数值、名称和数据类型。例如,如图7-153所示,如果将一个温度值数组转换为XML,并将这些数据保存到文本文件中,则可以通过查找用于表示每个温度的<Value>标记确定温度值。图7-154 将XML格式的数据还原至温度数组XML还原函数可将XML格式的数据类型转换成LabVIEW数据类型。......
2025-09-30
当创建表时,必须指定表名、列名及数据类型。图4.5创建表stuinfo创建完表以后可使用show tables命令来查看当前数据库中可用的表。图4.7创建表item在图4.7中创建了一个名为item的表。在字段other中,null表示允许该列为空,若没有特别指定该列为null或not null,默认情况下该列允许为空。图4.8查看表item的表结构要查看注释标识可通过show create table命令。......
2025-09-30
相关推荐