SCADE Suite 状态机之变量隐式赋值

1、变量的隐式赋值

**目的:**简化模型设计

**Last:**只要没有显示赋值,便取上一周期的数值

**Default:**只要没有显示赋值,便取默认设置的数值(优先级更高)

设置方法

2、定义变量的Last值

(1)模型

(2)说明

设置Output1的Last属性为0

(3)仿真

第1周期:State1激活,Output1=0

第4周期置Input1为true,下一周期(第5周期)State2激活,Output1变为1

第6周期:State3激活,Output1没有显示定义,由于设置了Last属性,取上一周期的值,即Output=1(不变)

第7周期:State4激活,Output1显示赋值为-1

第8周期:State1激活,Output1没有显示定义,取上一周期值-1(不变)

Output1波形图:

3、定义变量的Default值

(1)模型

(2)说明

仅将Output1的Default属性修改

(3)仿真

第1周期:State1激活,没有显示赋值,但定义了Default,Output1=0

第2周期:设置Input1为true并保持

第3周期:State2激活,Output1显示赋值

第4周期:State3激活,由于没有显示赋值,且设置了Default属性,Output1=0

第5周期:State4激活,显示赋值-1

第6周期:State1激活,未显示赋值,Output1=0

4、同时定义变量Last和Default

(1)模型

(2)说明

Last和Default同时设置,Deault优先级更高

(3)仿真

第1周期:State1激活,Output1被显示定义为上一周期的值[last 'Output1],由于定义了Output1 的Last属性值为-7,因此Output1=-7

第2周期:设置Input1为true

第3周期:State2激活,显示赋值1

第4周期:State3激活,未显示赋值,取Default,Output1=0

第5周期:显示赋值-1

第6周期:取上一周期值,仍为-1(不变)

5、同时不定义变量Last和Default

(1)模型

(2)说明

Last和Default均没有设置时,则取上一周期的值

(3)仿真

第1周期:State2激活,显示赋值1

第2周期:设置Input1为true

第3周期:State3激活,未显示赋值,取上一周期值

第4周期:显示赋值-1

第5周期:未显示赋值,取上一周期

SCADE Suite 状态机之变量隐式赋值相关推荐

  1. SCADE Suite安全状态机

    SCADE Suite安全状态机 一.安全状态机 1.状态机组成 SSM(Safe State Machine) 控制流方面建模 原理:状态A在满足某个条件时会发生迁移,从当前状态A跳转到状态B,这个 ...

  2. SCADE Sutie 状态机之Transaction History

    SCADE Suite安全状态机 一.安全状态机 1.状态机组成 SSM(Safe State Machine) 控制流方面建模 原理:状态A在满足某个条件时会发生迁移,从当前状态A跳转到状态B,这个 ...

  3. 14-Scala之隐式转换

    1.为什么要隐式转换 我们经常引入第三方库,但当我们想要扩展新功能的时候通常是很不方便的,因为我们不能直接修改其代码.scala提供了隐式转换机制和隐式参数帮我们解决诸如这样的问题. Scala中的隐 ...

  4. (基础)JavaScript类型转换(强制类型转换+隐式类型转换)

    JavaScript  中有五种基本数据类型(其中包括 String.Number.Boolean.Function.Symbol).三种对象类型(其中包括 Object.Date.Array)和两种 ...

  5. oracle c op,ORACLE中内部函数SYS_OP_C2C和隐式类型转换

    什么是SYS_OP_C2C呢?官方的介绍如下: SYS_OP_C2C is an internal function which does an implicit conversion of varc ...

  6. 类型转换:隐式转化(算数转换,整型提升,混合提升,赋值转换),强制转换【C语言】

    类型转换 隐式转化 算数转换 整型提升 混合提升 赋值转换 强制转换 编译器使用注意 小结 类型转换 隐式转化 不需要人为参与而产生的默认转称为隐式转化. 隐式转化,是计算机语言实现层面最难的,指针是 ...

  7. JS函数简单的底层原理 -变量重复声明无效,隐式申明,变量提升,函数提升,以及堆栈内存的变化

    JS函数简单的底层原理 (个人理解): 1. 已经使用var申明且赋值,若再次申明,则第二次申明(不赋值)无效. 2.在同一个作用域下,只要是发生了同名,且变量完成赋值,后者会覆盖前者.存在两个相同的 ...

  8. JavaScript入门第一天,js教程,js变量, 数据类型,数据转换,隐式转换

    今天在整理笔记,这是我重新整理的JavaScript的笔记.我觉得学什么东西,就应该认真去学,努力去学! java学习笔记 一.js有三种方式来使用 1. 首先第一种:写在标签里面 2. 其次第二种: ...

  9. scala 环境搭建 变量 值 数据类型 元组 表达式块 语句 函数 柯里化 集合 面向对象 隐式转换

    scala (scalable的简写) scala是一个比较冷门的语言,不太被人们所知道 为什么这么冷门的语言现在被我们使用 很多的大数据的项目的源码是是用scala语言编写的. 因为大数据技术不断被 ...

最新文章

  1. Windows Server 2003 简介
  2. O(n)级选排名第k位数(附上算法复杂度分析)
  3. (5)段描述符S位,TYPE域
  4. pixel和毫米怎么换算_赶紧收藏!小学阶段所有公式、单位换算、数量关系
  5. 微服务架构案例(06):通过业务、应用、技术、存储方面,聊聊架构
  6. navicate连接远程数据库
  7. 数据结构与就算法(选择排序)
  8. win7 32位系统安装postmant无法正常启动。启动显示黑屏界面
  9. 31. HTTP 与 HTTPS 区别
  10. 啥是数据湖?老子(zǐ)告诉你 | 凌云时刻
  11. 深入浅出学大数据(一)大数据发展历程及大数据的简单介绍
  12. 搭建高性能日志服务器,rsyslog日志服务器搭建
  13. 简述Handler机制原理
  14. selenium之HTML元素无法定位
  15. gofpdf 学习笔记
  16. 现货黄金有什么需要注意的?
  17. MFC 对话框添加背景图
  18. 国内国外最好的java开发论坛及站点
  19. 一款易用的视频云是如何迅速积累客户的?
  20. android fstrim命令,满血复活:安卓4.3为所有Nexus带来TRIM

热门文章

  1. 超级表格全新界面全新体验
  2. Shell | Hello World
  3. 微信公众平台 绑定微信用户OpenID与第三方业务账号
  4. 关于矩形排样问题(三)
  5. jQuery实现图片播放器插件
  6. 湖北移动魔百盒CM201-1-YS_S905L2_RTL8822_emmc_双内存-当贝桌面线刷固件包
  7. udp user datagram protocol
  8. 换行占用字节数吗c语言,C语言学习(第二天)
  9. Bilibili直播弹幕抓取(2):Fiddler与WireShark
  10. 76个偏门小生意,利润高不起眼的小生意