显示页面 讨论 修订记录 反向链接 本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。 ## 二进制到BCD码转换 <code python> module binary2bcd(binary_data,tens,ones); input [4:0] binary_data; output reg [3:0] tens; output reg [3:0] ones; always @* case(binary_data) 5'd0: begin tens = 4'd0; ones = 4'd0; end 5'd1: begin tens = 4'd0; ones = 4'd1; end 5'd2: begin tens = 4'd0; ones = 4'd2; end 5'd3: begin tens = 4'd0; ones = 4'd3; end 5'd4: begin tens = 4'd0; ones = 4'd4; end 5'd5: begin tens = 4'd0; ones = 4'd5; end 5'd6: begin tens = 4'd0; ones = 4'd6; end 5'd7: begin tens = 4'd0; ones = 4'd7; end 5'd8: begin tens = 4'd0; ones = 4'd8; end 5'd9: begin tens = 4'd0; ones = 4'd9; end 5'd10: begin tens = 4'd1; ones = 4'd0; end 5'd11: begin tens = 4'd1; ones = 4'd1; end 5'd12: begin tens = 4'd1; ones = 4'd2; end 5'd13: begin tens = 4'd1; ones = 4'd3; end 5'd14: begin tens = 4'd1; ones = 4'd4; end 5'd15: begin tens = 4'd1; ones = 4'd5; end 5'd16: begin tens = 4'd1; ones = 4'd6; end 5'd17: begin tens = 4'd1; ones = 4'd7; end 5'd18: begin tens = 4'd1; ones = 4'd8; end 5'd19: begin tens = 4'd1; ones = 4'd9; end 5'd20: begin tens = 4'd2; ones = 4'd0; end 5'd21: begin tens = 4'd2; ones = 4'd1; end 5'd22: begin tens = 4'd2; ones = 4'd2; end 5'd23: begin tens = 4'd2; ones = 4'd3; end 5'd24: begin tens = 4'd2; ones = 4'd4; end 5'd25: begin tens = 4'd2; ones = 4'd5; end 5'd26: begin tens = 4'd2; ones = 4'd6; end 5'd27: begin tens = 4'd2; ones = 4'd7; end 5'd28: begin tens = 4'd2; ones = 4'd8; end 5'd29: begin tens = 4'd2; ones = 4'd9; end 5'd30: begin tens = 4'd3; ones = 4'd0; end 5'd31: begin tens = 4'd3; ones = 4'd1; end endcase /* integer i; always @(binary_data) begin tens = 4'd0; ones = 4'd0; for (i=7; i >= 0; i=i-1) begin if (tens>=5) tens = tens +3; if (ones >= 5) ones = ones +3; tens = tens << 1; tens[0] = ones[3]; ones = ones << 1; ones[0] = binary_data[i]; end end */ endmodule </code>