Full adder

/*
输入 A    输入 B    进位输入 (Cin)  和数 (Sum)    进位输出 (Carry)
0   0   0   0   0
0   0   1   1   0
0   1   0   1   0
0   1   1   0   1
1   0   0   1   0
1   0   1   0   1
1   1   0   0   1
1   1   1   1   1
*/
module top_module( 
    input a, b, cin,
    output cout, sum );
assign sum = a^b^cin;
assign cout = (a & b) | (a & cin) | (b & cin);
endmodule