?? 10_bit_to_int.vhd
字號:
function bit_to_int (in1:bit_vector) return integer is
ALIAS v1: BIT_VECTOR(in1'LENGTH-1 DOWNTO 0) IS in1;
variable inpv : bit_vector(in1'LENGTH-1 DOWNTO 0 );
variable SUM: integer := 0;
variable negative :boolean:= false;
begin
inpv := in1;
if v1(v1'length-1) = '1' then
for i in v1'length-1 downto 0 loop
inpv(i) := not inpv(i);
end loop;
lp1:
for i in 0 to v1'length-1 loop
if inpv(i) = '1' THEN
inpv(i) := '0';
else
inpv(i) := '1';
exit lp1;
end if;
end loop;
negative := true;
end if;
for i in v1'length-1 downto 0 loop
if inpv(i) = '1' then
SUM := SUM + 2**i;
end if;
end loop;
if negative then
return (0-SUM);
else
return SUM;
end if;
end bit_to_int;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -