例化 verliogg的一个问题,m_out的值为什么不变

String存在于堆中吧?为什么调用方法后不能改变m_kobe的值?_百度知道
String存在于堆中吧?为什么调用方法后不能改变m_kobe的值?
public class Test {
String m_kobe = &1&;
String[] m_king = { &2& };
public static void main(String[] args) {
Test app = new Test();
app.mb_operate(app.m_kobe, app.m_king);
System.out.println(app.m_kobe + app.m_king[0]);
我有更好的答案
3&4&&&&for(int&i:mylist){&&&&&&&&&&&&&&&System.out,4;&nbsp,如果是值类型,那就是按值传递,如果是引用类型,那就是引用传递。既然String和数组都是引用类型,那应该是按引用传递啊;&&====改变之前====&quot:记住两句话就好;Test();&&&&&&&&&&S&&&);&nbsp,m_king是一个数组;&&&nbsp,但是在无论方法体内进行了何种操作,都不会改变实参对象的引用,改变的是内容,并不是king的指向吧。你在方法中写的是king[0]=new String(&quot.你可以运行一下这个例子看看结果;static&nbsp。也就是说,虽然方法内kobe形参指向了堆中的&&nbsp://wenku.println();static&mb_operate(int[]&&int[]{7;3”,但是kobe实参的指向没有改变,仍然是&quot,5};&&&&&&&&&&Test&app&&}&&&&&}&&&&1&;&&}&&&&&&&&&&Svoid&nbsp。你或许又会问那为什么数组的引用传进去后就可以改变内容?注意;&=&new&&4&),这只是改变了king这个数组对象中的第0个元素,是对象的内容改变了,这是允许的。结论;main(String[]&args)&&mylist)&{&nbsp.println(&quot.&&for(int&i:mylist){&&&&&&&&&&&System。你的想法肯定是;&&quot。当参数是对象时,只有在方法内部改变了对象的内容时;&5  5;&nbsp,才会改变实参对象内容。&&&&nbsp:&public&nbsp:====改变之前====1&&&&class&Test&{&&quot,3.print(i+&quot,8;&&&mylist&&&nbsp.给你个参考资料看看;&nbsp.com/view/3773bbdf50ee77;&&&&nbsp,m_kobe是一个String.{&&&&&&&&&&int[]&&int[]{1;&&=&new&&nbsp,输出结果应该是34 34对吧?我的想法是:String和数组都是按引用传递没错;=&new&nbsp,9;);&&&&&&&&&&nbsp:当参数是对象时,无论方法体内进行了何种操作,都不会改变实参对象的引用;&&nbsp:对方法传的参数;);&&&&System.out.println(&====改变之后====&);&&&&&&&&&&mb_operate(mylist);&====改变之后====1&2&nbsp  运行结果为:&34&14  下面我来分析一下原因:在你的程序里面.public&&nbsp.html" target="_blank">http://wenku.baidu.com/view/3773bbdf50ee77.html&nbsp,10,11};&&&&&}}  结果是;2&3&nbsp.print(i+&&nbsp,2;&&&4&5&void&nbsp:<a href="mylist&nbsp
采纳率:45%
String为不可变对象对于你的问题,创建后就不能修改它的值. 对于已经存在的String对象的修改都是重新创建一个新的对象:是一个对象不是原始类型,你看看这个是不是懂了:String,然后把新的值保存进去.String 是final类
String是java里面一个比较特殊的存在,jvm里面有个区域专门用来存放字符串(字符串常量区)。这是个很复杂的东西我也不是很了解。这个问题我倒是遇到过,后来在网上得知:方法参数传递的string都是已常量的方式传递即传递后的string是一个独立的常量。
不是, 因为字符串是值传递
为您推荐:
其他类似问题
string的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。为什么CF还会出现OUT OF M这种情况_百度知道
为什么CF还会出现OUT OF M这种情况
我家电脑XP系统
我自己又加了一个两G的
但是还是出现那个
我有更好的答案
点击高级、然后性能设置、点击程序再点击设置、设置虚拟内存的时候:1,必须点击设置,再点击应用确定(必须按照步骤走,否则不会有用!),然后点下面的 确定、点击我的电脑、右键点击属性。3。4。7、设置好内存之后。2。6。进入命令框后 输入命令 bcdedit /set increaseuserva 3072
然后按回车,可以看到推荐内容大小,建议填写电脑推荐虚拟内存大小、再点击高级。5。方法二。输入 cmd 命令Out of memory是内存不足的意思。方法一:打开 开始菜单-运行、点击左边的高级系统设置
采纳率:97%
来自团队:
为您推荐:
其他类似问题
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。> 问题详情
给出下列的程序代码片段,m为哪个值时将会输出default?switch(m){ case 0:System.out.println("ca
悬赏:0&答案豆
提问人:匿名网友
发布时间:
给出下列的程序代码片段,m为哪个值时将会输出default? switch(m) { case 0:System.out.println("case0"); case 1:System.out.println("case 1");break; case 2:System.out.println("case 2");break; default:System.out.println("default"); }A.0B.1C.2D.3请帮忙给出正确答案和分析,谢谢!
为您推荐的考试题库
您可能感兴趣的试题
1给出下列的不完整的方法,则下列的哪个声明可以被加入①行完成此方法的声明?    ①    ② { success = connect( );    ③  if (success = = - 1 ) {    ④   throw new TimedoutException( )    ⑤  }    ⑥ }A.public void method( )B.public void method( ) throws ExceptionC.public void method( ) throw TimedoutExceptionD.public throw TimedOutException void method( )2当Frame的大小被改变时,Frame中的按钮的位置可能被改变,则使用下列哪一个布局管理器A.BorderLayoutB.FlowLayoutC.CardLayoutD.GridLayout3给出下列关于一个使用适当的字符间距的字体的TextField的表达式,则哪个选项的叙&&述是对的?&&TextField t = new TextField("they are good",40);A.被显示的字符串可以使用多种字体B.一行中最大的字符数是40C.显示的宽度正好是40个字符宽D.用户可以编辑字符4给出下列有关List的表达式,则哪个选项的叙述是对的?List 1 = new List(6,true);A.在没有其他的约束的条件下该列表将有6行可见B.一行的最大字符数是6C.列表不允许用户多选D.列表只能有一项被选中
我有更好的答案
请先输入下方的验证码查看最佳答案
图形验证:
验证码提交中……
每天只需0.4元
选择支付方式
支付宝付款
郑重提醒:支付后,系统自动为您完成注册
请使用微信扫码支付(元)
支付后,系统自动为您完成注册
遇到问题请联系在线客服QQ:
微信扫一扫
体验上学吧搜题小程序
立即享有免费找答案
请您不要关闭此页面,支付完成后点击支付完成按钮
遇到问题请联系在线客服QQ:
恭喜您!升级VIP会员成功
提示:请截图保存您的账号信息,以方便日后登录使用。
常用邮箱:
用于找回密码
确认密码:博客分类:
三步教你用Verilog写一个CPU
第一步:小试牛刀
也许在不少人眼里,这个世界有两座难以企及的大山,一座是操作系统,还有一座就是CPU。无可否认,无论开发一个操作系统还是做一个CPU都是一件极其浩大的工程,需要一个优秀的团队前赴后继的努力。我相信有不少想涉足这两方面的人开始的时候都会有种无从下手的感觉,但是,经过我这一系列CPU的教程之后,我有十足把握,你肯定会对做CPU有根本性的改观,忽略太多工业上的要求以及硬件的具体实现,最后你会发现设计一个勉强能用的CPU其实不过是四五百行代码而已。
眼下,主流的操作系统就只有Windows、Linux、Mac OS,形成三足鼎立的局面,开发操作系统是极其困难的事情,起码我们国家就没有真正意义上自主的国产操作系统,而要形成一个新生操作系统的生态环境更是难上加难。的确,即使是要写一个精简版的mini操作系统,想要看到一点点成果都不是简单的事情。
而另一方面,虽然说做CPU的厂商有不少,但真正要有核心竞争力也实属不易。国产的有“龙芯”,但毕竟不是用在日常使用的电脑、手机上面的,近段时间华为的海思处理器大有动作,但真正能取得什么样的成绩也还难判定。
有时候我们真的应该好好想想,我们是不是应该对祖国有所贡献?比如参与开发国产操作系统,开发国产CPU这些令人骄傲的事情。可能我们不知不觉都习惯于“过日子”了,不是说没有了理想,每个学IT的人毕业了总会打拼一番,比如在微软、在谷歌,步步高升当上了产品经理甚至更高的职位,但除此之外,你有没有一些更加疯狂的想法?你有没有一些更加伟大的人生目标?你有没有热血沸腾的时候想为祖国争光?从小时候的“为中华之崛起而读书”,到现在习以为常地认为毕业了就应该找个大公司发挥自己的才能,干一番大事业,我感觉这里头味道已经变了,迷失了....
上面只是我的一些个人感慨,衷心希望以后在IT行业能看到更多中国品牌的东西以及在核心领域占据领先优势的局面。
废话少说,我必须跟读者申明的一点是,写操作系统的话你很难看得到成果,但是CPU不一样,因为我们并不是CPU生产厂商,所以不需要你去组合硬件,你只需要设计出CPU的电路结构,到时候依据电路图自然就可以组合成实实在在的CPU,而且通过一些仿真软件直接就可以在电脑上面看到你自己设计的电路的运行情况,又或者可以把你设计的电路的程序下载到FPGA开发板,它自动就帮你在硬件上构造了一个具有CPU功能的电路结构。之后你会发现,实现CPU的基本功能并不复杂,所以说,CPU的入门是相对比较简单的,而且不必太费劲就能看到成果,只不过要做得好就不是一天两天、一年两年的事情了。
课程要求:数字电路、计算机组成原理、程序设计
编程语言:Verilog
开发平台:xilinx ISE
FPGA开发板:Nexys3
指令集设计与五级流水线的实现
内存设计与CPU测试
指令冲突避免
本文实现的CPU是一个五级流水线的精简版CPU(也叫PCPU,即pipeline),包括IF(取指令)、ID(解码)、EX(执行)、MEM(内存操作)、WB(回写)。
指令集:RISC
指令集大小:2^5
数据宽度:16bit
数据内存:2^8×16bit
指令内存:2^8×16bit
通用寄存器:8×16bit
标志寄存器:NF(negative flag)、ZF(zero flag)、CF(carry flag)
控制信号:clock、reset、enable、start
介绍与设计
CPU顶层视图
第一步只要求实现简单的五级流水线,不要求实现指令内存、数据内存模块,因此CPU内部与内存有关的信号都简化为输入输出信号了,CPU的顶层视图看起来应该如下图,其中select_y、y信号是跟CPU板级测试有关的,这一步暂且没用到。
图1 CPU top view
指令为三地址格式,操作码长度5bit,根据操作数的不同可以把指令分为三种类型,即寄存器类型R type、立即数类型I type、混合类型RI type,不过后面在代码编写的时候,为了方便,会依据其它标准进行划分。
图2 指令格式
规范一下表示方式,r1或者gr[r1]表示访问寄存器r1,m[r2+val3]表示访问r2+val3这个地址,{val2,val3}表示立即数访问,val2为MSB,val3为LSB。
图3 机器代码示例
本文设计一共实现了28条机器指令,剩下未用的4个操作码(,)可自行补充为其它操作,比如自增INC、自减DEC。这里指令的编码是比较随意的,而且由于代码实现中使用了宏定义,因此可以任意更改指令的编码,不过如果想做进一步的优化,就要仔细考虑编码方式了。以下是指令集的具体格式与操作,设计CPU的时候有两张图是必须时刻看着的,我都把它们打印出来,这是其中一张。
图4 指令集
五级流水线
除了指令集之外,设计CPU最重要的就是下面这张CPU块级电路图,五级流水线的代码实现都必须依赖于这张图,因此必须理解图中每一步的作用。
图5 CPU块级电路图
其实这个图也并不复杂,CPU无非就是组合逻辑电路和时序电路的结合,而图中所有矩形框标出来的都是CPU内部的寄存器,整个电路图展示了CPU内部指令以及数据的流动方向。每到时钟上升沿,上一级流水线的寄存器的数据就会经过中间的组合逻辑电路流动到下一级流水线的寄存器,因此,5个时钟周期之后一条机器指令便执行完毕了。简单描述一条指令的执行过程就是,首先根据PC的值到内存中取一条指令,解码指令提取两个操作数进行运算,根据指令功能以及运算结果决定是否访问数据内存以及如何访问,最后同样根据指令功能决定是否要进行回写操作,即修改寄存器的值。
下面将分别讲解CPU控制以及五级流水线每一级的行为,为了简单起见,这里仅考虑NOP、HALT、LOAD、STORE、ADD、CMP、BZ、BN这几条指令,明白了流水线的行为之后再加上其它的指令也是一样的道理。
1、CPU控制
CPU控制自然是基于状态机,只有两个状态idle和exec,CPU在idle状态下只有enable、start同时使能才会进入exec状态。
CPU control
IF阶段的任务就是要根据PC的值从指令内存中读取一条指令,并且设置下一周期PC的值(指令可以顺序执行,也可以跳转到某个特定的地址)。因为读取内存是内存模块实现的功能,因此这里CPU只需要给出指令地址i_addr就能得到对应的指令i_datain。
ID阶段要根据指令的功能(即操作码)从指令中提取对应的操作数,操作数可能来自通用寄存器r0-r7,也可能是立即数。另外如果指令是STORE指令,也要准备好要存储到内存中的数据。
EX阶段执行的是ALU运算和标志寄存器设置,另外如果是STORE指令也要给出内存写的使能信号dw以及将要写到内存中的数据smdr1。
MEM阶段要根据指令功能和上一阶段的运算结果(内存操作的时候作为内存地址)决定是否要访问内存以及如何访问,只对需要内存操作的指令有效。
WB阶段同样根据指令的功能以及上一阶段的结果决定是否要修改寄存器的值以及如何修改,只对需要修改寄存器值的指令有效。
上面的设计中只给出了时序电路部分的代码,而且只针对个别指令,另外还应该有一部分组合逻辑电路的代码则是处理上一级流水线寄存器的数据如何流动到下一级寄存器的。下面是完整的代码实现。
`define idle 1'b0
`define exec 1'b1
`define NOP
`define HALT 5'b0_0001
`define LOAD 5'b0_0010
`define STORE 5'b0_0011
`define SLL
`define SLA
`define SRL
`define SRA
`define ADD
`define ADDI 5'b0_1001
`define SUB
`define SUBI 5'b0_1011
`define CMP
`define AND
`define OR
`define XOR
`define LDIH 5'b1_0000
`define ADDC 5'b1_0001
`define SUBC 5'b1_0010
`define SUIH 5'b1_0011
`define JUMP 5'b1_1000
`define JMPR 5'b1_1001
`define BZ
`define BNZ
`define BN
`define BNN
`define BC
`define BNC
`define gr0
`define gr1
`define gr2
`define gr3
`define gr4
`define gr5
`define gr6
`define gr7
`timescale 1ns / 1ps
`include "def.v"
module pcpu(
input clock,
input enable,
input reset,
input start,
input [15:0] i_datain,
input [15:0] d_datain,
output [7:0] i_addr,
output [7:0] d_addr,
output d_we,
output [15:0] d_dataout
reg [15:0] ALUo;
reg state, next_
reg zf, nf, cf,
reg [15:0] id_ir, ex_ir, mem_ir, wb_
reg [15:0] reg_A, reg_B, reg_C, reg_C1, smdr, smdr1;
reg [15:0] gr[7:0];
wire branch_
//************* CPU Control *************//
always @(posedge clock)
if (!reset)
state &= `
state &= next_
//************* CPU Control *************//
always @(*)
case (state)
if ((enable == 1'b1)
&& (start == 1'b1))
next_state &= `
next_state &= `
if ((enable == 1'b0)
|| (wb_ir[15:11] == `HALT))
next_state &= `
next_state &= `
//************* IF *************//
assign i_addr =
always @(posedge clock or negedge reset)
if (!reset)
id_ir &= {`NOP, 11'b000_};
pc &= 8'b;
else if (state ==`exec)
id_ir &= i_
if(branch_flag)
pc &= reg_C[7:0];
pc &= pc + 1;
//************* ID *************//
always @(posedge clock or negedge reset)
if (!reset)
ex_ir &= {`NOP, 11'b000_};
reg_A &= 16'b00_0000;
reg_B &= 16'b00_0000;
smdr &= 16'b00_0000;
else if (state == `exec)
ex_ir &= id_
if (id_ir[15:11] == `STORE)
smdr &= gr[id_ir[10:8]];
if (id_ir[15:11] == `JUMP)
reg_A &= 16'b00_0000;
else if (I_R1_TYPE(id_ir[15:11]))
reg_A &= gr[id_ir[10:8]];
else if (I_R2_TYPE(id_ir[15:11]))
reg_A &= gr[id_ir[6:4]];
reg_A &= reg_A;
if (I_V3_TYPE(id_ir[15:11]))
reg_B &= {12'b00, id_ir[3:0]};
else if (I_ZEROV2V3_TYPE(id_ir[15:11]))
reg_B &= {8'b, id_ir[7:0]};
else if (I_V2V3ZERO_TYPE(id_ir[15:11]))
reg_B &= {id_ir[7:0], 8'b};
else if (I_R3_TYPE(id_ir[15:11]))
reg_B &= gr[id_ir[2:0]];
reg_B &= reg_B;
//************* EX *************//
always @(posedge clock or negedge reset)
if (!reset)
mem_ir &= {`NOP, 11'b000_};
reg_C &= 16'b00_0000;
smdr1 &= 16'b00_0000;
dw &= 1'b0;
zf &= 1'b0;
nf &= 1'b0;
cf &= 1'b0;
else if (state == `exec)
reg_C &= ALUo;
mem_ir &= ex_
if ((ex_ir[15:11] == `LDIH)
|| (ex_ir[15:11] == `SUIH)
|| (ex_ir[15:11] == `ADD)
|| (ex_ir[15:11] == `ADDI)
|| (ex_ir[15:11] == `ADDC)
|| (ex_ir[15:11] == `SUB)
|| (ex_ir[15:11] == `SUBI)
|| (ex_ir[15:11] == `SUBC)
|| (ex_ir[15:11] == `CMP)
|| (ex_ir[15:11] == `AND)
|| (ex_ir[15:11] == `OR)
|| (ex_ir[15:11] == `XOR)
|| (ex_ir[15:11] == `SLL)
|| (ex_ir[15:11] == `SRL)
|| (ex_ir[15:11] == `SLA)
|| (ex_ir[15:11] == `SRA))
if (ALUo == 16'b00_0000)
zf &= 1'b1;
zf &= 1'b0;
if (ALUo[15] == 1'b1)
nf &= 1'b1;
nf &= 1'b0;
if (ex_ir[15:11] == `STORE)
dw &= 1'b1;
dw &= 1'b0;
smdr1 &= smdr1;
always @(*)
if (ex_ir[15:11] == `AND)
cf_buf &= 1'b0;
ALUo &= reg_A & reg_B;
else if (ex_ir[15:11] == `OR)
cf_buf &= 1'b0;
ALUo &= reg_A | reg_B;
else if (ex_ir[15:11] == `XOR)
cf_buf &= 1'b0;
ALUo &= reg_A ^ reg_B;
else if (ex_ir[15:11] == `SLL)
{cf_buf, ALUo[15:0]} &= {cf, reg_A[15:0]} && reg_B[3:0];
else if (ex_ir[15:11] == `SRL)
{ALUo[15:0], cf_buf} &= {reg_A[15:0], cf} && reg_B[3:0];
else if (ex_ir[15:11] == `SLA)
{cf_buf, ALUo[15:0]} &= {cf, reg_A[15:0]} &&& reg_B[3:0];
else if (ex_ir[15:11] == `SRA)
{ALUo[15:0], cf_buf} &= {reg_A[15:0], cf} &&& reg_B[3:0];
else if ((ex_ir[15:11] == `SUB)
|| (ex_ir[15:11] == `SUBI)
|| (ex_ir[15:11] == `CMP)
|| (ex_ir[15:11] == `SUIH))
{cf_buf, ALUo} &= reg_A - reg_B;
else if (ex_ir[15:11] == `SUBC)
{cf_buf, ALUo} &= reg_A - reg_B -
else if (ex_ir[15:11] == `ADDC)
{cf_buf, ALUo} &= reg_A + reg_B +
{cf_buf, ALUo} &= reg_A + reg_B;
//************* MEM *************//
assign d_addr = reg_C[7:0];
assign d_we =
assign d_dataout = smdr1;
assign branch_flag = ((mem_ir[15:11] == `JUMP)
|| (mem_ir[15:11] == `JMPR)
|| ((mem_ir[15:11] == `BZ) && (zf == 1'b1))
|| ((mem_ir[15:11] == `BNZ) && (zf == 1'b0))
|| ((mem_ir[15:11] == `BN) && (nf == 1'b1))
|| ((mem_ir[15:11] == `BNN) && (nf == 1'b0))
|| ((mem_ir[15:11] == `BC) && (cf == 1'b1))
|| ((mem_ir[15:11] == `BNC) && (cf == 1'b0)));
always @(posedge clock or negedge reset)
if (!reset)
wb_ir &= {`NOP, 11'b000_};
reg_C1 &= 16'b00_0000;
else if (state == `exec)
wb_ir &= mem_
if (mem_ir[15:11] == `LOAD)
reg_C1 &= d_
reg_C1 &= reg_C;
//************* WB *************//
always @(posedge clock or negedge reset)
if (!reset)
gr[0] &= 16'b00_0000;
gr[1] &= 16'b00_0000;
gr[2] &= 16'b00_0000;
gr[3] &= 16'b00_0000;
gr[4] &= 16'b00_0000;
gr[5] &= 16'b00_0000;
gr[6] &= 16'b00_0000;
gr[7] &= 16'b00_0000;
else if (state == `exec)
if (I_REG_TYPE(wb_ir[15:11]))
gr[wb_ir[10:8]] &= reg_C1;
//***** Judge an instruction whether alter the value of a register *****//
function I_REG_TYPE;
input [4:0]
I_REG_TYPE = ((op == `LOAD)
|| (op == `LDIH)
|| (op == `ADD)
|| (op == `ADDI)
|| (op == `ADDC)
|| (op == `SUIH)
|| (op == `SUB)
|| (op == `SUBI)
|| (op == `SUBC)
|| (op == `AND)
|| (op == `OR)
|| (op == `XOR)
|| (op == `SLL)
|| (op == `SRL)
|| (op == `SLA)
|| (op == `SRA));
endfunction
//************* R1 as reg_A *************//
function I_R1_TYPE;
input [4:0]
I_R1_TYPE = ((op == `LDIH)
|| (op == `SUIH)
|| (op == `ADDI)
|| (op == `SUBI)
|| (op == `JMPR)
|| (op == `BZ)
|| (op == `BNZ)
|| (op == `BN)
|| (op == `BNN)
|| (op == `BC)
|| (op == `BNC));
endfunction
//************* R2 as reg_A *************//
function I_R2_TYPE;
input [4:0]
I_R2_TYPE = ((op == `LOAD)
|| (op == `STORE)
|| (op == `ADD)
|| (op == `ADDC)
|| (op == `SUB)
|| (op == `SUBC)
|| (op == `CMP)
|| (op == `AND)
|| (op == `OR)
|| (op == `XOR)
|| (op == `SLL)
|| (op == `SRL)
|| (op == `SLA)
|| (op == `SRA));
endfunction
//************* R3 as reg_B *************//
function I_R3_TYPE;
input [4:0]
I_R3_TYPE = ((op == `ADD)
|| (op == `ADDC)
|| (op == `SUB)
|| (op == `SUBC)
|| (op == `CMP)
|| (op == `AND)
|| (op == `OR)
|| (op == `XOR));
endfunction
//************* val3 as reg_B *************//
function I_V3_TYPE;
input [4:0]
I_V3_TYPE = ((op == `LOAD)
|| (op == `STORE)
|| (op == `SLL)
|| (op == `SRL)
|| (op == `SLA)
|| (op == `SRA));
endfunction
//************* {,val2,val3} as reg_B *************//
function I_ZEROV2V3_TYPE;
input [4:0]
I_ZEROV2V3_TYPE = ((op == `ADDI)
|| (op == `SUBI)
|| (op == `JUMP)
|| (op == `JMPR)
|| (op == `BZ)
|| (op == `BNZ)
|| (op == `BN)
|| (op == `BNN)
|| (op == `BC)
|| (op == `BNC));
endfunction
//************* {val2,val3,} as reg_B *************//
function I_V2V3ZERO_TYPE;
input [4:0]
I_V2V3ZERO_TYPE = ((op == `LDIH)
|| (op == `SUIH));
endfunction
下载次数: 43
浏览: 55004 次
来自: 广州
tqw001 写道帅哥 想联系你简直难如登天啊 。我扣扣三一三 ...
帅哥 想联系你简直难如登天啊 。我扣扣三一三零零九六 魔豆官方 ...
幻想很美妙,显示很残酷.如果是这样,面试管是不会要我们的
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'

我要回帖

更多关于 i m out 的文章

 

随机推荐