lw2012 发表于 2016-5-5 11:40:31

写Verilog代码,感觉那个begin..end好麻烦,比C的{}差远了..T_T

不知道大家是什么感觉。。。。。
为什么verilog不用{},位拼接可以找别的方法代替啊, 感觉begin..end效率超低,还影响阅读。

techbaby 发表于 2016-5-5 11:43:19

那个,没记错的话,pascal也是这种写法!
{:shocked:}

yuyu87 发表于 2016-5-5 11:44:36

呵,习惯就好了,就这几个符号,并且都有用处了,像大,中,小,括号,别的没有成对的了,你想位拼接用begin end么?

aleyn 发表于 2016-5-5 11:47:27

delphi 表示无压力 。

lw2012 发表于 2016-5-5 11:50:32

那请问, 以下哪种代码风格比较适合verilog????

或者其他风格?


//-------------
// 1
if(...)
begin
        ...
        ...
end
//--------------
// 2
if(...)begin
        ...
        ...
        end
//--------------
// 3
if(...)begin
        ...
        ...
end
//--------------
// 4
if(...)
begin
        ...
        ...
        end
//--------------
// 5
if(...)
        begin
                ...
                ...
        end
//--------------
// 6
if(...)
        begin
        ...
        ...
        end
//--------------

lw2012 发表于 2016-5-5 11:53:18

aleyn 发表于 2016-5-5 11:47
delphi 表示无压力 。

一直就是写C程序, 没用过delphi和pascal............唉。。。。。。

prow 发表于 2016-5-5 11:57:53

lw2012 发表于 2016-5-5 11:50
那请问, 以下哪种代码风格比较适合verilog????

或者其他风格?

很多人用的都是3

但是我喜欢1

McuPlayer 发表于 2016-5-5 11:58:03

因为Verilog的{}被用掉了,只能用begin和end来包含模块

myhonour 发表于 2016-5-5 11:58:13

习惯就好了

lw2012 发表于 2016-5-5 12:01:52

prow 发表于 2016-5-5 11:57
很多人用的都是3

但是我喜欢1

是的, 我也是发现3比较多, 可能我也会选择1 ,这样和C的习惯就差不多了。

redroof 发表于 2016-5-5 13:00:24

如果ide足够聪明,你写个b ctrl+J,就替你补齐了而且光标停在begin和end之间,缩进两格

redroof 发表于 2016-5-5 13:01:17

这比你写一对大括号还快,呵呵!

yuntian 发表于 2016-5-5 13:45:54

习惯就好了

colinzhao 发表于 2016-5-5 14:51:41

否则你怎么区分这是C还是Verilog呢?

peecehood 发表于 2016-5-5 14:57:53

很习惯的说,上位机都用Delphi。

lw2012 发表于 2016-5-5 15:10:06

redroof 发表于 2016-5-5 13:00
如果ide足够聪明,你写个b ctrl+J,就替你补齐了而且光标停在begin和end之间,缩进两格 ...

我的编辑器不行呢, 不知道你用的是哪个?

Scarlette 发表于 2016-5-5 15:10:51

呵呵,所有Pascal系的都表示不在乎{:titter:}

gzhuli 发表于 2016-5-5 15:18:31

Python系的表示{}都嫌麻烦…… {:titter:}

1907931256 发表于 2016-5-5 15:21:55

每种语言都有自己的规则,我们要做是在这规则里面玩

redroof 发表于 2016-5-5 15:22:59

lw2012 发表于 2016-5-5 15:10
我的编辑器不行呢, 不知道你用的是哪个?

我说的就是delphi/BCB自己的编辑器(用过的人一看到自动补全的快捷键是Ctrl+J就应该明白)
如果是UltraEdit或者其他什么高级编辑器,请用他们的按键宏来自己做
无非就是让某个按键触发如下动作:
b,e,g,i,n,回车,空格,空格,回车,e,n,d,上箭头
{:lol:}

gzhuli 发表于 2016-5-5 15:32:38

redroof 发表于 2016-5-5 15:22
我说的就是delphi/BCB自己的编辑器(用过的人一看到自动补全的快捷键是Ctrl+J就应该明白)
如果是UltraEd ...

然而大多数C IDE都是{回车就自动缩进和补完后面的}了,不需要任何快捷键……

modbus 发表于 2016-5-5 15:43:15

还是C最简捷

McuPlayer 发表于 2016-5-5 15:45:24

Python只要推空格就行

zzy9903 发表于 2016-5-5 15:55:53

第一种或第5种都行,记得以前上大学的时候老师讲pascal是最严谨的语言,后来用了一段时间delphi,感觉也不错

Linn 发表于 2016-5-5 16:04:15

lw2012 发表于 2016-5-5 15:10
我的编辑器不行呢, 不知道你用的是哪个?

用sublime的路过

redroof 发表于 2016-5-5 16:28:35

gzhuli 发表于 2016-5-5 15:32
然而大多数C IDE都是{回车就自动缩进和补完后面的}了,不需要任何快捷键…… ...

"回车"也是一个键啊{:lol:}
按{和回车跟按b和Ctrl+J也没差到哪里。反正最少你得按一个键来告诉编辑器你想做什么,然后再按一个键来触发自动完成。也就是至少按两下键
总不能按一个键然后编辑器立刻触发自动完成吧!
我曾经把编辑器配置成按b立刻自动替换begin end,马上反应过来这样没法用了,因为你的变量名里面总会含有字母b{:titter:}
要是写C的把编辑器配置成见到{无需其他按键立刻触发自动替换,也一样的坑人。。。

lw2012 发表于 2016-5-6 11:24:55

网上找了一个
Sublime Text 3 v3.3111 汉化特别版()
给有需要的。
官网的演示视频还是很NB的

刚试了一下,好像不支持verilog,还是先用NOTEPAD++吧。







lw2012 发表于 2016-5-6 11:28:20

redroof 发表于 2016-5-5 16:28
"回车"也是一个键啊
按{和回车跟按b和Ctrl+J也没差到哪里。反正最少你得按一个键来告诉编辑器你 ...

其实, 我觉得用惯了VS+VA(Visual Studio + Visual Assist )就觉得其他的编辑器都不太好用。{:lol:}

xivisi 发表于 2016-5-6 11:28:36

UltraEdit自己加模板

redroof 发表于 2016-5-6 11:34:31

lw2012 发表于 2016-5-6 11:28
其实, 我觉得用惯了VS+VA(Visual Studio + Visual Assist )就觉得其他的编辑器都不太好用。...

其实无所谓的,各大编辑器其实都已经做的足够好。
你想省的按键,能省的都帮你省了,除非是省不了的(因为字母键上你没办法绑定单键的快捷键,否则就没办法输入正常字母了,省到极限至少得按两个键{:lol:} )

tianxian 发表于 2016-5-6 11:42:58

有程序员认为 unsigned int 应该从0x01开始 不应该从0x00开始,其认为 程序中数值总是从 0x00 开始不适合人类社会的习惯用法。

NJ8888 发表于 2016-5-6 15:30:37

用过basic delphi vhdl c java路过

guo69 发表于 2016-5-6 16:03:56

习惯就好了,

bj232 发表于 2016-5-6 16:09:57

还有一部分人在使用VHDL哦,当然也有end

modbus 发表于 2016-5-6 16:15:45

我就受不了pascal的begin..end,看着就是别扭,不如C的{}看着舒服,所以当时上位机就坚决不学DELPHI

gzhuli 发表于 2016-5-6 16:33:14

redroof 发表于 2016-5-5 16:28
"回车"也是一个键啊
按{和回车跟按b和Ctrl+J也没差到哪里。反正最少你得按一个键来告诉编辑器你 ...

先不说回车不是需要记忆的“快捷键”,最起码Ctrl+J也是两个键……

小小菜 发表于 2016-5-6 16:37:33

习惯了就什么感觉都没有了

wq_601840968 发表于 2016-5-6 17:21:32

lw2012 发表于 2016-5-5 11:50
那请问, 以下哪种代码风格比较适合verilog????

或者其他风格?

我喜欢1

596142041 发表于 2016-5-6 17:39:01

比较习惯风格5,怎么感觉VHDL使用起来比verilog更方便呢。

xivisi 发表于 2016-5-6 17:57:21

tianxian 发表于 2016-5-6 11:42
有程序员认为 unsigned int 应该从0x01开始 不应该从0x00开始,其认为 程序中数值总是从 0x00 开始不适合人 ...

小端模式,不也一样……结果现在小端是主流

redroof 发表于 2016-5-6 18:47:38

gzhuli 发表于 2016-5-6 16:33
先不说回车不是需要记忆的“快捷键”,最起码Ctrl+J也是两个键……

那就配成b 回车自动替换begin end也行
相信正常程序很少见到用b作为一行结尾的。
当然,某些编辑器或许没办法配成这样…
Delphi编辑器就得装插件才能不按任何特殊键就自动替换输入

redroof 发表于 2016-5-6 19:12:00

本帖最后由 redroof 于 2016-5-6 19:27 编辑

我天天要写UnicodeString这种长名字,办法就是配一个自动替换,见到写us空格就替成完整的UnicodeString空格。代价是变量名不要用us结尾
在有高级编辑器的情况下,文字的长短根本不是问题。嫌长了自己配个短名字作自动替换就行了

tianxian 发表于 2016-5-6 19:14:44

xivisi 发表于 2016-5-6 17:57
小端模式,不也一样……结果现在小端是主流

没说清楚 误会了,那人一直搞C# JAVA,偶然用C写单片机,对于 unsigned char 可表示256个值 从0~255感到很不满,说如果编程语言由他创造的话 unsigned char 的数值一定从 1~256,他认为人数数都是从1开始而不是0开始的

Fourier00 发表于 2016-5-7 17:10:01

还好吧,写个代码花不了什么时间

jzb8736 发表于 2016-5-7 17:12:50

编辑器不都有模板吗?推荐你看看这个http://micrortl.com/?p=926#31

dellric 发表于 2016-5-7 17:19:40

为什么你不用SystemC呢

zjykwym 发表于 2016-12-18 13:56:07

除了begin end,还有 fork join。。。

zxq6 发表于 2016-12-21 19:12:03

vb也是,习惯了

FireBrain 发表于 2016-12-21 19:33:03

用过delphi表示begin。。end也很简单

KuJJ 发表于 2016-12-21 19:36:46

McuPlayer 发表于 2016-5-5 15:45
Python只要推空格就行

这个更不能习惯,完全不好读

hyz_avr 发表于 2016-12-21 19:40:23

redroof 发表于 2016-5-5 15:22
我说的就是delphi/BCB自己的编辑器(用过的人一看到自动补全的快捷键是Ctrl+J就应该明白)
如果是UltraEd ...

一直用c++builder,表示没用过Ctrl+J,第一次知道这个快捷键,都是自动出来的.

辰星和月 发表于 2016-12-21 20:24:18

verilog的语法确实很麻烦,我们公司这边有脚本,直接把逻辑写清楚,端口例话,信号申明,begin end啥的都用脚本生成的。偶尔要自己直接写点verilog的时候,对于法不熟悉的毛病就暴露出来了,,,

gxh470873852 发表于 2016-12-21 20:27:30

lw2012 发表于 2016-5-5 11:50
那请问, 以下哪种代码风格比较适合verilog????

或者其他风格?

喜欢第五种{:lol:}

unnormal 发表于 2016-12-23 15:31:37

习惯就好其实都一样

xuekcd 发表于 2016-12-26 13:10:47

我觉得第一种写法好!{:lol:}

huangqi412 发表于 2016-12-26 16:02:13

还是括号简介清晰

LVmcu 发表于 2017-2-6 17:15:54

McuPlayer 发表于 2016-5-5 11:58
因为Verilog的{}被用掉了,只能用begin和end来包含模块

请问 quartus有没有 go to definition 功能?

Excellence 发表于 2017-2-6 17:26:49

还是喜欢C或PYTHON.....


页: [1]
查看完整版本: 写Verilog代码,感觉那个begin..end好麻烦,比C的{}差远了..T_T