做一个真正的程序员!

大学学习的是软件编程专业,都快毕业了,其实给我的感觉,也就学到了点皮毛,大学老师估计也有诸多矛盾,开课学习计算机深层次的东西吧,学生毕业又不是搞学术研究的,总不能一毕业就失业;学习流行的吧,那大学和培训机构的差别在哪里?流行的开发技术老师好些都没有碰过,还没有培训机构讲的使用。所以大学深的没有深入,浅的没有关注,大学生出来就是一个断层,原理原理搞不好,上手上手跟不上!

现在快该毕业了,在和企业单位的摩擦中,我也窥见了点真理,企业希望你来了就能创造价值,我们有很想学会企业的东西,赶紧跳槽。来提高我们的身价。所以企业想把你早期变成码奴,后期为企业所用;我们希望企业像学校老师一样,传授他们的所有!我们是程序员,我们的理想会不会在与企业的第一次交锋中被抹平。。。

 

其实现在看来程序员不是被教出来的,是自己练出来的,没有你自身的感觉,别人灌给你啥,你会啥,你走不了多远就该掉队了!

 

所以我的成长从现在开始,为自己加分,今天入住csdn。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一个简单的Verilog代码,实现一个程序员计算器。这个计算器将支持二进制、十进制和十六进制数,以及位运算和位移运算。 ```verilog module programmer_calculator( input [31:0] num1, num2, // 两个操作数 input [3:0] op, // 运算符 output [31:0] res // 计算结果 ); // 计算器的状态机 reg [2:0] state; parameter S0 = 0, S1 = 1, S2 = 2, S3 = 3; // 计算结果的寄存器 reg [31:0] result; // 运算器的逻辑 always @(*) begin case(op) 4'b0000: result = num1 + num2; // 加法 4'b0001: result = num1 - num2; // 减法 4'b0010: result = num1 & num2; // 与运算 4'b0011: result = num1 | num2; // 或运算 4'b0100: result = num1 ^ num2; // 异或运算 4'b0101: result = ~num1; // 取反 4'b0110: result = num1 << num2; // 左移 4'b0111: result = num1 >> num2; // 右移 4'b1000: result = {num1[31], num1[31:1]}; // 符号扩展 4'b1001: result = {num1[30:0], 1'b0}; // 无符号数左移 4'b1010: result = {1'b0, num1[31:1]}; // 无符号数右移 endcase end // 状态机的逻辑 always @(posedge clk) begin case(state) S0: begin result <= 0; state <= S1; end S1: begin result <= result; state <= S2; end S2: begin res <= result; state <= S3; end S3: begin state <= S0; end endcase end endmodule ``` 在这个代码中,我们定义了一个程序员计算器模块,包含了两个操作数输入 `num1` 和 `num2`,一个运算符输入 `op`,以及一个计算结果输出 `res`。计算器的逻辑是通过一个 case 语句实现的,根据不同的运算符来进行加、减、与、或、异或、取反、左移、右移、符号扩展和无符号数左右移运算。计算结果保存在一个寄存器中,然后通过一个简单的状态机输出到 `res` 中。 请注意,这只是一个简单的示例,实际上一个真正的程序员计算器可能会更加复杂。如果您需要更多的帮助,请随时问我。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值