两个vim小技巧和时序逻辑引入

介绍两个可以在Windows系统安装的进行vim练习和cshell练习的工具,分别是gvim和cygwin terminal,今天介绍两个小技巧,都是在vim中用的方法:

第一个小技巧是vim的记录技巧,首先打开gvim,进入的是normal mode,普通模式;然后按i,进入insert mode,插入模式,可以进行字符的编辑了,然后输入1。

然后按esc,回到normalmode,按q,进入记录模式,再按a,表示记录开始,然后yy,复制这一行,按p贴复制的内容到下一行,光标到现在2的位置(这时候还是1),按ctrl+a,可以让数字加1,然后变成了2,然后再按q,记录模式结束,

现在可以使用@a调用这个记录的操作了,按7@a,就相当于操作了7次,最后结果如下;

(这个是在gvim中调用的,有点bug,在记录模式时无法使用ctrl+a来增加数值,但在Linux环境中时可以用ctrl+a的)

然后另一个技巧是:map的映射功能(在normal模式时转换成命令模式,命令模式其实就是加上两个冒号),采用:map \ dd,就相当于把dd的功能赋给了\,然后在某一行时按\,就会删除这一行。

有两种procedural block,分别是initial和always,intial相当于初始化,相应模块只运行一次,而always则是只要满足条件就会开始运行;always有两种触发方式,always@(a )这种是电平触发,而always(posedge a),表示在上升沿时触发,一般边沿触发在同一个always里不应该超过三个,而同一个电平的正边沿和负边沿触发不应该在同一个always模块里面。除此之外还可以用wait(a)来表示触发条件。两种赋值方式assign a = b; assign a <= b;

前一个为blocking assignment,阻塞赋值,后一个为non-blocking assignment,非阻塞赋值,在always模块里面,采用阻塞赋值的一般是组合逻辑,采用非阻塞赋值的一般是时序逻辑,这个需要注意。无论时序逻辑还是组合逻辑,都需要提前想好架构再进行代码编写,否则会事倍功半,反之则会事半功倍。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,780评论 18 399
  • 外国人可以喝红酒,但法国人才能真正分辨其中的细端末节。酒会开始的是波尔多和嫩细的小牛肉。客人举杯用被誉为会品酒的鼻...
    张家和阅读 258评论 0 2
  • 对高考似乎总是有着一种特殊的情感,本科时每年高考的数学卷和理综卷我总会做上一遍,本科毕业后工作中也曾写下《回眸高考...
    光明Angel阅读 510评论 5 12
  • 喜欢看能把衬衫穿得很好看的男生,尤其是白色的衬衫,远远地看,像是一抹阳光。只是,我今天,注意到了,当然不只是今天。...
    泪尽成陌阅读 189评论 0 0
  • 爱是什么,爱是日常生活中最普通的最实际的行动。也许没有甜言蜜语,也许没有鲜花钻石。一个眼神的交流,就知道彼此的心意...
    ae87be85412e阅读 260评论 0 0