第7题
[说明]
在计算机控制中,有些数据补偿、计算及转换等参数的计算非常复杂,编程难,程序长且运算费时,但是用数表却比较容易实现。
设有256个字节的数据,已按从小到大的顺序存放在以BINTAB为首地址的数据区单元中,现要求查找其中值为126的数据,用对分查表法查询的汇编程序如下:
[汇编程序代码]
DATA SEGMENT
BINTAB DBl8,25,32,46,56,78,… ;第1~100个数据
DB 90,95,99,100,106,126,… ;第101~200个数据
DB 189,195,197,202,206,216,… ;第201~256个数据
COUNT EQU 256
FLAG DW ?
KEY EQU (1)
DATA ENDS
STAK SEGMENT
STPN DB 20 DUP(?)
STAK ENDS
CODE SEGMENT
ASSUME CS,CODE, DS,DATA, ES:DATA, SS:STAK
BINSEAT PROC FAR
START, MOV AX, DATA
MOV DS, AX
MOV ES, AX
LEA SI, BINTAB
MOV CX, COUNT
MOV DX, 1
MOV AX, SI
ADD AX, CX
MOV DI, AX
MOV AL, KEY
LOP0, MOV BX, SI
ADD BX, DI
SHR BX, 1
CMP AL, [BX]
JZ FOUND
PUSHF
(2)
JZ NFOUND
POPF
JL LESS
MOV SI, BX
JMP NEXT
LESS, (3)
NEXT, (4)
JMP LOP0
NFOUND: MOV AX, DX ;未找到,标志全1送DX
FOUND: MOV AX, DX
MOV FLAG, AX
RET
BINSEAT ENDP
CODE ENDS
(5)
请根据试题的要求,将汇编程序代码中(1)~(5)空缺处的内容填写完整。
第8题
第五章 1. S7-200 SMART PLC的程序包括哪几部分?其中的用户程序中又包含哪些部分? 2. 写一段梯形图程序,实现将VD20开始的10个双字型数据送到VD400开始的存储区,这10个数据的相对位置在移动前后不发生变化。 3. 有一组数据存放在VB600开始的20个字节中,采用间接寻址方式设计一段程序,将这20个字节的数据存储到从VB300开始的存储单元中。 4. 用功能指令实现时间为6个月的延时,试设计梯形图程序。 5. 编写一段程序计算sin 50°+ cos70°×(tg40°÷)的值。 8. 试设计一个计数器程序,要求如下: (1)计数范围是0~255; (2)计数脉冲为SM0.5; (3)输入I0.0的状态改变时,则立即激活输入/输出中断程序。中断程序0和1分别将M0.0置成1或0; (4) M0.0为1时,计数器加计数;M0.0为0时,计数器减计数。 (5)计数器的计数值通过连接在QB0上的7段数码管显示。 10. 什么是PID控制?其主要用途是什么?PID中各项的主要作用是什么? 12. 某一过程控制系统,其中一个单极性模拟量输入参数从AIW0采集到PLC中,通过PID指令计算出的控制结果从AQW0输出到控制对象。PID参数表起始地址为VB100。试设计一段程序完成下列任务: (1) 每200 ms中断一次,执行中断程序; (2) 在中断程序中完成对AIW0的采集、转换及归一化处理、完成回路控制输出值的工程量标定及输出。 第六章 4.本书利用电气原理图、PLC一般指令和功能图三种方法设计了“三台电动机顺序启动/停止”的例子,试比较它们的设计原理、方法和结果的异同。
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!