早教吧 育儿知识 作业答案 考试题库 百科 知识分享

verilog变量值怎么确定我看了夏宇闻的verilog数字系统设计教程这本书,我在看第119页!有个很奇怪的问题不明白!请教一下reg[7:0]A;A=2'hFF;什么值和下面的值相等(1)8'b00000011(2)8'h03(3)8'b11111111(4)8

题目详情
verilog变量值怎么确定
我看了夏宇闻的verilog数字系统设计教程这本书,我在看第119页!
有个很奇怪的问题不明白!请教一下
reg [7:0] A;
A=2'hFF;什么值和下面的值相等
(1)8'b0000_0011 (2)8'h03 (3)8'b1111_1111 (4)8'b11111111
为什么书上说的答案是 和1、2相等
还有
reg [7:0] B;
B=8'bZ0;
(1)8'0000_00Z0 (2)8'bZZZZ_0000 (3)8'b0000_ZZZ0 (4)8'bZZZZ_ZZZ0
这个更奇怪,为什么是和第四个值相等?我怎么也想不明白?到底是怎么计算的?
▼优质解答
答案和解析
第一个问题:
A=2‘hFF是十六进制表示的,FF本来前面是8位表示才是完全,他只用了2位.
举个例子,A这样写你是不是好理解,A=8‘hFF,转成2进制就是A=8’b1111_1111
A写成这样,A=2‘hFF,就是取低两位,高位补0,所以2进制就是(1)8'b0000_0011
同理写成十六进制就是(2)8'h03
第二个问题:
B=8'bZ0,是二进制表示的,2进制的0只能表示一个位,所以就只有一个0,在最末位
(4)8'bZZZZ_ZZZ0

希望能帮到你