0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CASE语句的执行规则是什么?

机器人及PLC自动化应用 来源:搜狐网 作者:搜狐网 2020-10-09 09:26 次阅读

CASE:创建多路分支

CASE语句用来选择几个分支程序部分之一。选择是基于选择表达式当前值的。

使用“创建多路分支”指令,可以根据数字表达式的值执行多个指令序列中的一个。

表达式的值必须为整数。执行该指令时,会将表达式的值与多个常数的值进行比较。如果表达式的值等

于某个常数的值,则将执行紧跟在该常数后编写的指令。常数可以为以下值:

• 整数(例如,5)

• 整数的范围(例如,15..20)

• 由整数和范围组成的枚举(例如,10、11、15..20)

CASE语句按下列规则执行:

·选择表达式必须返回一个整数类型的值。

·当CASE语句被处理时,程序检查是否选择表达式的值包含在指定的值表之中。如果找到匹配项,列表指定的语句部分将被执行。

·如果没有发现匹配项,程序选择ELSE后面的语句,或者如果ELSE分支不存在则无语句可执行。

如果表达式的值等于第一个常数(<常数 1="">)的值,则将执行紧跟在该常数后编写的指令(<指令 1="">)。程序将从 END_CASE 后继续执行。如果表达式的值不等于第一个常数(<常数 1="">)的值,则会将该值与下一个设定的常数值进行比较。以这种方式执行 CASE 指令直至比较的值相等为止。如果表达式的值与所有设定的常数值均不相等,则将执行 ELSE 后编写的指令(<指令 0="">)。ELSE 是一个可选的语法部分,可以省略。此外,CASE 指令也可通过使用 CASE 替换一个指令块来进行嵌套。END_CASE 表示 CASE 指令结束。

根据管角value输入数来决定OUT1输出的数

FUNCTION FC1 : INT 建立FC1程序,输出反馈值得属性是INT整数

VAR_input

value:INT;

END_VAR

VAR_outPUT

OUT1:INT;

END_VAR

VAR_TEMP

END_VAR

CASEvalue OF

1:

OUT1:=1 ;

2:

OUT1:=2 ;

3:

OUT1:=3 ;

4:

OUT1:=4 ;

5:

OUT1:=5 ;

6:

OUT1:=6 ;

ELSE: 不是1-6就输出99

OUT1:=99 ;

END_CASE;

FC1:= OUT1;FC1的反馈值和OUT1值一致.

END_FUNCTION

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Case
    +关注

    关注

    0

    文章

    24

    浏览量

    13305

原文标题:PLC -SCL CASE 练习

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【FPGA学习】VHDL 顺序语句描述方法 VHDL的if、case、LOOP、NEXT语句怎么写

    CASE;下面是一个使用 CASE 语句执行处理器指令的例子:CASE instruction ISWHEN load_accum =>a
    发表于 09-13 09:39

    芯灵思SinlinxA33开发板安卓开发:java语言基础(五)

    语句}for语句执行规则是:(1)计算“表达式1”,完成必要的初始化工作。(2)判断“表达式2”的值,若“表达式2”的值为true,则进行(3),否则进行(4)。(3)执行循环体,然
    发表于 12-24 15:24

    3W规则是什么?20H规则是什么?

    3W规则是什么?20H规则是什么?五---五规则是什么
    发表于 04-27 06:09

    verilog中if与case语句不完整产生锁存器的原因分析

      在很多地方都能看到,verilog中if与case语句必须完整,即if要加上else,case后要加上default语句,以防止锁存器的发生,下载内容中就谈到了其中原因。
    发表于 09-16 09:29 24次下载

    FPGA代码经验 case,casez,casex语句

    使用case语句代替嵌套的if-else将会产生更易读的代码,更好的逻辑利用率和更高的性能。
    的头像 发表于 12-11 10:42 5541次阅读

    select语句和update语句分别是怎么执行

    最近有粉丝面试互联网公司被问到:你知道select语句和update语句分别是怎么执行的吗?,要我写一篇这两者执行SQL语句的区别,这不就来
    的头像 发表于 11-03 09:41 3229次阅读
    select<b class='flag-5'>语句</b>和update<b class='flag-5'>语句</b>分别是怎么<b class='flag-5'>执行</b>的

    51单片机实战教程之C语言基础(九 switch语句

    switch语句,是一个多分支,选择执行语句。它的一般格式为:switch(表达式){ case 常量表达式: 语句
    发表于 11-20 20:51 11次下载
    51单片机实战教程之C语言基础(九 switch<b class='flag-5'>语句</b>)

    决策语句允许程序块的执行流程

    SystemVerilog case语句与C switch语句类似,但有重要区别。SystemVerilog不能使用break语句(C使用break从switch
    的头像 发表于 10-27 08:57 665次阅读

    什么是SystemVerilog-决策语句-if-else语句

    决策语句(Decision statements)允许程序块的执行流程根据设计中信号的当前值分支到特定语句。SystemVerilog有两个主要的决策语句:if…else
    的头像 发表于 02-09 14:15 680次阅读
    什么是SystemVerilog-决策<b class='flag-5'>语句</b>-if-else<b class='flag-5'>语句</b>?

    Verilog中的If语句case语句介绍

    我们在上一篇文章中已经看到了如何使用程序块(例如 always 块来编写按顺序执行的 verilog 代码。 我们还可以在程序块中使用许多语句来控制在我们的verilog设计中信号赋值的方式
    的头像 发表于 05-11 15:37 3143次阅读
    Verilog中的If<b class='flag-5'>语句</b>和<b class='flag-5'>case</b><b class='flag-5'>语句</b>介绍

    SCL语言的Case语句如何使用以及实例

    CASE语句用于根据不同的条件执行不同的操作。以下是使用CASE语句的示例: 示例1:根据输入的值执行
    的头像 发表于 06-19 09:57 1011次阅读
    SCL语言的<b class='flag-5'>Case</b><b class='flag-5'>语句</b>如何使用以及实例

    WHILE语句如何执行

    令“FOR”、“WHILE”和“REPEAT-UNTIL”的运行:由于系统不显示这些指令中的变量值,因此可避免对循环时间造成影响。 WHILE允许由执行条件控制的循环地执行语句序列。执行
    的头像 发表于 09-10 09:48 504次阅读
    WHILE<b class='flag-5'>语句</b>如何<b class='flag-5'>执行</b>

    case后边可以跟多个语句

    是的,"case" 后面可以跟多个语句。在编程语言中,"case" 通常被用于 switch 语句中,用于检查一个变量或表达式是否匹配某个特定的值。当匹配成功时,可以
    的头像 发表于 11-30 14:19 2544次阅读

    java switch case的语法规则

    在Java中,switch case语句是一种用于多分支选择的控制流语句。它允许根据某个表达式的值来执行不同的代码块。下面是关于switch cas
    的头像 发表于 11-30 14:40 356次阅读

    java中的switch语句 case的取值

    Java中的switch语句是一种用于多重条件判断的语句,用于根据不同的条件执行不同的代码块。在switch语句中,case关键字用来指定不
    的头像 发表于 11-30 16:05 334次阅读