当前位置: 首页 > news >正文

硬件语言Verilog HDL牛客刷题day02 组合逻辑部分

1.VL11  4位数值比较器电路

1.题目:

某4位数值比较器的功能表如下。请用Verilog语言采用门级描述方式,实现此4位数值比较器。

 


2.解题代码:

`timescale 1ns/1nsmodule comparator_4(input		[3:0]       A   	,input	   [3:0]		B   	,output	 wire		Y2    , //A>Boutput   wire        Y1    , //A=Boutput   wire        Y0      //A<B
);wire W2[0:3];
wire W1[0:3];
wire W0[0:3];genvar i;
for(i=0;i<4;i=i+1)beginthree_compare U1(.A (A[i]),.B (B[i]),.Y2 (W2[i]),.Y1 (W1[i]),.Y0 (W0[i]));end
assign Y2 = W2[3] | ((W1[3])&&(W2[2])) |  ((W1[3]) && (W1[2]) && (W2[1])) | ((W1[3]) && (W1[2]) && (W1[1]) && (W2[0]));
assign Y0 = W0[3] | ((W1[3])&&(W0[2])) |  ((W1[3]) && (W1[2]) && (W0[1])) | ((W1[3]) && (W1[2]) && (W1[1]) && (W0[0]));
assign Y1  = W1[3] & W1[2] & W1[1] &W1[0];endmodule//定义另外一个模块  判断三个数的关系
module three_compare(input A,  //输入值 1 或者 0 input B,  //输入值 1 或者 0output Y2, //假如Y2=1 , 这两个数大于output Y1, //假如Y1=1 ,这两个数等于 output Y0  //假如Y0=1 , 这两个数小于
);assign Y2 = A & (!B);  //持续赋值 Y2 大于的标志
assign Y0 = (!A) & B;  //持续赋值 Y0 小于的标志
assign Y1 = !(Y2 | Y0);  //持续赋值 , 除非Y2 Y0 都不等于1  那时候Y1 =1
endmodule 



2.VL12 4bit超前进位加法器电路

 1.题目:


2.解题代码:

`timescale 1ns/1nsmodule lca_4(input		[3:0]       A_in  ,input	    [3:0]		B_in  ,input                   C_1   ,output	 wire			CO    ,output   wire [3:0]	    S
);wire[3:0] G;
wire[3:0] P;
wire[3:0] C;genvar i;
generatefor(i=0;i<4;i=i+1)beginadd_half U1(.A (A_in[i]),.B (B_in[i]),.C (G[i]),.D (P[i]));assign S[i] =  (i>0)  ?  P[i]^C[i-1] : P[i]^C_1;assign C[i] =  (i>0)  ?  G[i] | P[i] & C[i-1] : G[i] + P[i] & C_1;//assign C[i] = (i == 0) ? (G[i] | (P[i] & C_1)) : (G[i] | (P[i] & C[i-1])); //assign S[i] = (i == 0) ? (P[i] ^ C_1) : (P[i] ^ C[i-1]);end
endgenerate
assign CO = C[3];endmodulemodule add_half(
input A,
input B,
output C,
output D
);
assign C = A & B;
assign D = A ^ B; 
endmodule



3.VL13 优先编码器电路①

1.题目:


2.解题代码

`timescale 1ns/1nsmodule encoder_0(input      [8:0]         I_n   ,output reg [3:0]         Y_n   
);always@(*)begincasex (I_n)9'b1_1111_1111 : Y_n= 4'b1111;9'b0_????_???? : Y_n= 4'b0110;9'b1_0???_???? : Y_n= 4'b0111;9'b1_10??_???? : Y_n= 4'b1000;9'b1_110?_???? : Y_n= 4'b1001;9'b1_1110_???? : Y_n= 4'b1010;9'b1_1111_0??? : Y_n= 4'b1011;9'b1_1111_10?? : Y_n= 4'b1100;9'b1_1111_110? : Y_n= 4'b1101;9'b1_1111_1110 : Y_n= 4'b1110;default: Y_n=4'b0000;endcaseend
endmodule


4.VL14 用优先编码器①实现键盘编码电路

1.题目:

请使用优先编码器①实现键盘编码电路,可添加并例化题目中已给出的优先编码器代码。

10个按键分别对应十进制数0-9,按键9的优先级别最高;按键悬空时,按键输出高电平,按键按下时,按键输出低电平;键盘编码电路的输出是8421BCD码。

要求:键盘编码电路要有工作状态标志,以区分没有按键按下和按键0按下两种情况。

优先编码器真值表如下图:

 


2.解题代码:

`timescale 1ns/1ns
module encoder_0(input      [8:0]         I_n   ,output reg [3:0]         Y_n   
);always @(*)begincasex(I_n)9'b111111111 : Y_n = 4'b1111;9'b0xxxxxxxx : Y_n = 4'b0110;9'b10xxxxxxx : Y_n = 4'b0111;9'b110xxxxxx : Y_n = 4'b1000;9'b1110xxxxx : Y_n = 4'b1001;9'b11110xxxx : Y_n = 4'b1010;9'b111110xxx : Y_n = 4'b1011;9'b1111110xx : Y_n = 4'b1100;9'b11111110x : Y_n = 4'b1101;9'b111111110 : Y_n = 4'b1110;default      : Y_n = 4'b1111;endcase    
end endmodulemodule key_encoder(input      [9:0]         S_n   ,         output wire[3:0]         L     ,output wire              GS
);wire[3:0] l_temp;
encoder_0 U1(.I_n (S_n[9:1]),.Y_n (l_temp)
);
assign L = ~l_temp;
assign GS = ~(S_n[0] & l_temp[3] & l_temp[2] & l_temp[1] & l_temp[0]); endmodule


5.VL15 优先编码器Ⅰ

1.题目:

下表是8线-3线优先编码器Ⅰ的功能表。

①请根据该功能表,用Verilog实现该优先编码器Ⅰ。

 


2.解题代码

`timescale 1ns/1nsmodule encoder_83(input      [7:0]       I   ,input                  EI  ,output wire [2:0]      Y   ,output wire            GS  ,output wire            EO    
);reg [2:0] Y_r;reg GS_r, EO_r;always@(*) begincasez({EI, I})9'b0_????_????: {Y_r, GS_r, EO_r} = 5'b000_0_0;9'b1_0000_0000: {Y_r, GS_r, EO_r} = 5'b000_0_1;9'b1_1???_????: {Y_r, GS_r, EO_r} = 5'b111_1_0;9'b1_01??_????: {Y_r, GS_r, EO_r} = 5'b110_1_0;9'b1_001?_????: {Y_r, GS_r, EO_r} = 5'b101_1_0;9'b1_0001_????: {Y_r, GS_r, EO_r} = 5'b100_1_0;9'b1_0000_1???: {Y_r, GS_r, EO_r} = 5'b011_1_0;9'b1_0000_01??: {Y_r, GS_r, EO_r} = 5'b010_1_0;9'b1_0000_001?: {Y_r, GS_r, EO_r} = 5'b001_1_0;9'b1_0000_0001: {Y_r, GS_r, EO_r} = 5'b000_1_0;default: {Y_r, GS_r, EO_r} = 5'b000_0_0;endcaseendassign Y  = Y_r;assign GS = GS_r;assign EO = EO_r;
endmodule



6.VL16 使用8线-3线优先编码器工实现16线-4线优先编码器

1.题目 : 

请使用2片该优先编码器Ⅰ及必要的逻辑电路实现16线-4线优先编码器。优先编码器Ⅰ的真值表和代码已给出。

可将优先编码器Ⅰ的代码添加到本题答案中,并例化。


2.解题思路:

                2.1首先把16位的数据数据输入分为 2 个8 位的数据输入。当有一个 83线编码器工作时,另外一个不工作。 控制这个的数据位为E1 (高电平启动83编码器 ),  当一个83编码器运行之后的EO  输出为 0 .  所以我们可以使用 E1(使能输入)  EO(使能输出)来控制两个编码器的运行。 

                2.2EI EO 思路举例说明:

  EI(最开始的输入)  ->  编码器1  ->    EO1   ->  编码器2 EI   -> EO (最后的EO) 

                2.3然后是 15 位 到 8位 的83编码器 的输出,可以这样比喻, 当15位 到 8位的 83编码器使用  它的输出的3 位的数据直接 + 2'b1000  就行。 (自己想一想)

编码器1 (15-8位) 输出的3 位数据  B1
16-4 编码器输出 L[3:0];
wire[3:0] B1 ; //assign持续赋值 wire
B1 =  83编码器的输出  + 2'b1000/2'b0000;=  83编码器的输出  + GS1 (是否使用  ,使用 1, 没有使用0)B1[3] = GS1;
L[3] = B1[3] = GS1;
L[3] = GS1;

                2.4 最后的16-4 编码器的输出结果是  两个编码器相 或。

                


3.解题遇到的问题

3.1  问题:  main.v:53:error:B1['sd3]在encoder_164中不是有效的l值。  main.v:31::B1['sd3]在这里被声明为wire。  main.v:55:错误:B1['sd3]在encoder_164中不是有效的l值。  main.v:31::B1['sd3]在这里被声明为wire。

错误原因:数据类型定义错误 或者 赋值类型错误

解决方法: 在always 过程块中被赋值的变量必须是 reg (寄存器型),用 assign 连续赋值的对象 必须定义成 wire(线型);


4.解题代码

`timescale 1ns/1ns
module encoder_83(input      [7:0]       I   ,input                  EI  ,output wire [2:0]      Y   ,output wire            GS  ,output wire            EO    
);
assign Y[2] = EI & (I[7] | I[6] | I[5] | I[4]);
assign Y[1] = EI & (I[7] | I[6] | ~I[5]&~I[4]&I[3] | ~I[5]&~I[4]&I[2]);
assign Y[0] = EI & (I[7] | ~I[6]&I[5] | ~I[6]&~I[4]&I[3] | ~I[6]&~I[4]&~I[2]&I[1]);assign EO = EI&~I[7]&~I[6]&~I[5]&~I[4]&~I[3]&~I[2]&~I[1]&~I[0];assign GS = EI&(I[7] | I[6] | I[5] | I[4] | I[3] | I[2] | I[1] | I[0]);
//assign GS = EI&(| I);endmodulemodule encoder_164(input      [15:0]      A   ,input                  EI  ,output wire [3:0]      L   ,output wire            GS  ,output wire            EO    
);wire[2:0] A1;
wire[2:0] B1;
wire Gs1,Gs2;
wire EO1;encoder_83 U1(.EI (EO1),.I  (A[7:0]),.Y  (A1[2:0]),.GS (Gs1),.EO (EO)
);encoder_83 S2(.EI (EI),.I  (A[15:8]),.Y  (B1[2:0]),.GS (Gs2),.EO (EO1)
);assign L[3] = Gs2;
assign L[2] = A1[2] | B1[2];
assign L[1] = A1[1] | B1[1];
assign L[0] = A1[0] | B1[0];
assign GS = Gs1 | Gs2;endmodule


7.VL17 用3-8译码器实现全减器

1.题目:

请使用3-8译码器和必要的逻辑门实现全减器,全减器接口图如下,A是被减数,B是减数,Ci是来自低位的借位,D是差,Co是向高位的借位。

  

 3-8译码器代码如下,可将参考代码添加并例化到本题答案中。

module decoder_38(input             E      ,input             A0     ,input             A1     ,input             A2     ,output reg       Y0n    ,  output reg       Y1n    , output reg       Y2n    , output reg       Y3n    , output reg       Y4n    , output reg       Y5n    , output reg       Y6n    , output reg       Y7n    
);always @(*)beginif(!E)beginY0n = 1'b1;Y1n = 1'b1;Y2n = 1'b1;Y3n = 1'b1;Y4n = 1'b1;Y5n = 1'b1;Y6n = 1'b1;Y7n = 1'b1;end  else begincase({A2,A1,A0})3'b000 : beginY0n = 1'b0; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b001 : beginY0n = 1'b1; Y1n = 1'b0; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b010 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b0; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b011 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b0; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b100 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b0; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b101 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b0; Y6n = 1'b1; Y7n = 1'b1;end 3'b110 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b0; Y7n = 1'b1;end 3'b111 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b0;end default: beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;endendcase  end 
end    endmodule

2.解题代码

`timescale 1ns/1nsmodule decoder_38(input             E      ,input             A0     ,input             A1     ,input             A2     ,output reg       Y0n    ,  output reg       Y1n    , output reg       Y2n    , output reg       Y3n    , output reg       Y4n    , output reg       Y5n    , output reg       Y6n    , output reg       Y7n    
);always @(*)beginif(!E)beginY0n = 1'b1;Y1n = 1'b1;Y2n = 1'b1;Y3n = 1'b1;Y4n = 1'b1;Y5n = 1'b1;Y6n = 1'b1;Y7n = 1'b1;end  else begincase({A2,A1,A0})3'b000 : begin  Y0n = 1'b0; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b001 : beginY0n = 1'b1; Y1n = 1'b0; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b010 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b0; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b011 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b0; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b100 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b0; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;end 3'b101 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b0; Y6n = 1'b1; Y7n = 1'b1;end 3'b110 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b0; Y7n = 1'b1;end 3'b111 : beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b0;end default: beginY0n = 1'b1; Y1n = 1'b1; Y2n = 1'b1; Y3n = 1'b1; Y4n = 1'b1; Y5n = 1'b1; Y6n = 1'b1; Y7n = 1'b1;endendcase  end 
end    endmodulemodule decoder1(input             A     ,input             B     ,input             Ci    ,output wire       D     ,output wire       Co         
);wire Y0n,Y1n,Y2n,Y3n,Y4n,Y5n,Y6n,Y7n;decoder_38 decoder_1(.E(1)      ,.A0(Ci)     ,.A1(A)     ,.A2(B)     ,.Y0n(Y0n)    ,  .Y1n(Y1n)    , .Y2n(Y2n)    , .Y3n(Y3n)    , .Y4n(Y4n)    , .Y5n(Y5n)    , .Y6n(Y6n)    , .Y7n(Y7n)    
);assign D = ~(Y1n&Y2n&Y4n&Y7n);assign Co = ~(Y1n&Y4n&Y5n&Y7n);
endmodule


8.VL18 实现3-8译码器①

1.题目:

下表是74HC138译码器的功能表.

请用基础门电路实现该译码器电路,用Verilog将电路描述出来。基础门电路包括:非门、多输入与门、多输入或门。


2.解题代码

`timescale 1ns/1nsmodule decoder_38(input             E1_n   ,input             E2_n   ,input             E3     ,input             A0     ,input             A1     ,input             A2     ,output wire       Y0_n   ,  output wire       Y1_n   , output wire       Y2_n   , output wire       Y3_n   , output wire       Y4_n   , output wire       Y5_n   , output wire       Y6_n   , output wire       Y7_n   
);wire [7:0] Y;
wire EN;
//首先是公式  就是真值表转 公式 因为  38 译码器的输出 是低电平,没事我们两边加上一个  ~ 就和之前的列出公式差不多了, 只要列出 输出为0 的。
//列出输出的公式
//使用或门  第一个为输出的值 第二第三为  相或的参数
//第一个为使能输出, 标准的正常的使能为 E3=1  ,E2_n =0  ,  E1_n =0;and(EN,E3 , ~E2_n, ~E1_n); 
//  输出 0 的真值表的公式
and(Y[0],EN,~A0,~A1,~A2);
and(Y[1],EN,A0,~A1,~A2);
and (Y[2] , EN , ~A0,A1,~A2);
and (Y[3] , EN , A0,A1,~A2);
and (Y[4] , EN , ~A0,~A1,A2);
and (Y[5] , EN , A0,~A1,A2);
and (Y[6] , EN , ~A0,A1,A2);
and (Y[7] , EN , A0,A1,A2);//非门 ,因为两边加了一个非门
not (Y0_n , Y[0]);
not (Y1_n , Y[1]);
not (Y2_n , Y[2]);
not (Y3_n , Y[3]);
not (Y4_n , Y[4]);
not (Y5_n , Y[5]);
not (Y6_n , Y[6]);
not (Y7_n , Y[7]);endmodule


9.VL19 使用3-8译码器①实现逻辑函数

1.题目:

下表是74HC138译码器的功能表

②请使用3-8译码器①和必要的逻辑门实现函数L=(~A)·C+A·B

可在本题答案中添加并例化3-8译码器①代码,3-8译码器①代码如下:

module decoder_38(input             E1_n   ,input             E2_n   ,input             E3     ,input             A0     ,input             A1     ,input             A2     ,output wire       Y0_n   ,  output wire       Y1_n   , output wire       Y2_n   , output wire       Y3_n   , output wire       Y4_n   , output wire       Y5_n   , output wire       Y6_n   , output wire       Y7_n   
);
wire E ;
assign E = E3 & ~E2_n & ~E1_n;
assign  Y0_n = ~(E & ~A2 & ~A1 & ~A0);
assign  Y1_n = ~(E & ~A2 & ~A1 &  A0);
assign  Y2_n = ~(E & ~A2 &  A1 & ~A0);
assign  Y3_n = ~(E & ~A2 &  A1 &  A0);
assign  Y4_n = ~(E &  A2 & ~A1 & ~A0);
assign  Y5_n = ~(E &  A2 & ~A1 &  A0);
assign  Y6_n = ~(E &  A2 &  A1 & ~A0);
assign  Y7_n = ~(E &  A2 &  A1 &  A0);endmodule


2.解题代码

`timescale 1ns/1nsmodule decoder_38(input             E1_n   ,input             E2_n   ,input             E3     ,input             A0     ,input             A1     ,input             A2     ,output wire       Y0_n   ,  output wire       Y1_n   , output wire       Y2_n   , output wire       Y3_n   , output wire       Y4_n   , output wire       Y5_n   , output wire       Y6_n   , output wire       Y7_n   
);
wire E ;
assign E = E3 & ~E2_n & ~E1_n;
assign  Y0_n = ~(E & ~A2 & ~A1 & ~A0);
assign  Y1_n = ~(E & ~A2 & ~A1 &  A0);
assign  Y2_n = ~(E & ~A2 &  A1 & ~A0);
assign  Y3_n = ~(E & ~A2 &  A1 &  A0);
assign  Y4_n = ~(E &  A2 & ~A1 & ~A0);
assign  Y5_n = ~(E &  A2 & ~A1 &  A0);
assign  Y6_n = ~(E &  A2 &  A1 & ~A0);
assign  Y7_n = ~(E &  A2 &  A1 &  A0);endmodulemodule decoder0(input             A     ,input             B     ,input             C     ,output wire       L
);wire       Y0_n   ;  
wire       Y1_n   ; 
wire       Y2_n   ; 
wire       Y3_n   ; 
wire       Y4_n   ; 
wire       Y5_n   ; 
wire       Y6_n   ; 
wire       Y7_n   ;decoder_38 U0(.E1_n   (1'b0),.E2_n   (1'b0),.E3     (1'b1),.A0     (C),.A1     (B),.A2     (A),.Y0_n   (Y0_n),  .Y1_n   (Y1_n), .Y2_n   (Y2_n), .Y3_n   (Y3_n), .Y4_n   (Y4_n), .Y5_n   (Y5_n), .Y6_n   (Y6_n), .Y7_n   (Y7_n)
);assign L = ~(Y1_n & Y3_n & Y6_n & Y7_n);endmodule



10.VL20 数据选择器实现逻辑电路

1.题目:

数据选择器代码如下,可在本题答案中添加并例化此数据选择器。

module data_sel(input             S0     ,input             S1     ,input             D0     ,input             D1     ,input             D2     ,input             D3     ,output wire        Y    
);assign Y = ~S1 & (~S0&D0 | S0&D1) | S1&(~S0&D2 | S0&D3);endmodule

 


 2.解题思路:

D1 = ~D2 

D1 = C

D2 = ~C


3.解题代码

`timescale 1ns/1nsmodule data_sel(input             S0     ,input             S1     ,input             D0     ,input             D1     ,input             D2     ,input             D3     ,output wire        Y    
);assign Y = ~S1 & (~S0&D0 | S0&D1) | S1&(~S0&D2 | S0&D3);endmodulemodule sel_exp(input             A     ,input             B     ,input             C     ,output wire       L            
);data_sel c1(.S0(A),.S1(B),.D0(0),.D1(~C),.D2(C),.D3(1),.Y(L) );endmodule

相关文章:

硬件语言Verilog HDL牛客刷题day02 组合逻辑部分

1.VL11 4位数值比较器电路 1.题目&#xff1a; 某4位数值比较器的功能表如下。请用Verilog语言采用门级描述方式&#xff0c;实现此4位数值比较器。 2.解题代码&#xff1a; timescale 1ns/1nsmodule comparator_4(input [3:0] A ,input [3:0] B ,output …...

【LM401】ADC采集代码解读

本文主要实现基于LM401模组,&#xff0c;测试ADC低功耗采集&#xff0c;详细解析代码基于计算方式 对于小白理解ADC有更详细的理解 【LM401】ADC采集代码解读1. 单片机ADC与DAC简单理解2. 模组ADC通道介绍3. ADC初始化4. 采集值的计算5.测试结果硬件基于易智联的LM401的LoRa模组…...

CSDN 编程竞赛四十期题解

竞赛总览 CSDN 编程竞赛四十期&#xff1a;比赛详情 (csdn.net) 竞赛题解 题目1、小鱼的航程 有一只小鱼&#xff0c;它上午游泳150公里&#xff0c;下午游泳100公里&#xff0c;晚上和周末都休息&#xff08;实行双休日)。假设从周x&#xff08;1<x<7&#xff09;开…...

【TypeScript学习之路】泛型

【TypeScript学习之路】泛型 文章目录【TypeScript学习之路】泛型写在前面前言一、认识泛型1.1 什么是泛型1.2 泛型函数的使用二、泛型接口与泛型类2.1 泛型接口2.2 泛型类三、泛型约束写在前面 &#x1f917;这里是前端程序员小张&#xff01; &#x1f33b;人海茫茫&#xff…...

数据分析学习项目:东京奥运会跳水评论分析

“中国跳水梦之队” ————有关东京奥运会跳水评论分析 导语 第32届夏季奥林匹克运动会于2021年07月23日-2021年08月08日在日本东京举办。 四年一届的奥运会可以说是世界瞩目的盛会&#xff0c;奥运健儿们在赛场上的精神风貌不只是代表了他们自身的运动精神&#xff0c;更昭…...

Winform/Csharp中使用Linq的Where条件筛选、Select字段映射(左外连接并设置无匹配时默认值)、OrderBy(排序并自定义排序规则)

场景 Java8新特性-Stream对集合进行操作的常用API&#xff1a; Java8新特性-Stream对集合进行操作的常用API_streamapi操作集合_霸道流氓气质的博客-CSDN博客 上面讲的是在Java中使用Stream中对集合的常用操作。 在C#中Linq是有对应的类似的api。 完整和详细的用法可自行查…...

Linux-常用的Shell命令

文章目录前言常用的Shell命令文件和目录管理查看文件、目录信息查看文件内容查看文件类型查找文件查找内容查看目录大小创建文件删除文件拷贝文件移动文件创建目录删除目录拷贝目录压缩文件解压文件路径相关操作目录切换显示当前路径用户、用户组管理创建用户删除用户创建用户组…...

Go语言基础:数组定义及循环遍历

前言 大家好&#xff0c;我是沐风晓月&#xff0c;本文go语言入门-掌握go语言函数收录于《go语言学习专栏》专栏&#xff0c;此专栏带你从零开始学习go语言&#xff0c;持续更新中&#xff0c;欢迎点赞收藏。 &#x1f3e0;个人主页&#xff1a;我是沐风晓月 &#x1f9d1;个人…...

【树与二叉树】二叉树顺序结构实现以及堆的概念及结构--详解介绍

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;数据结构 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 文章目录1. 二叉树顺序结构2.…...

天狗实战(二)SpringBoot API开发详解 --SpringMVC注解+封装结果+支持跨域+打包(下)

本文目录 前言专栏介绍一、创建SpringBoot项目1.1 添加springboot依赖1.2 创建启动类1.3 创建控制器类1.4 Run 或 Debug二、开发图书管理API2.1 web层BookAdminControllerBookVO2.2 service层BookServiceBookServiceImplBookBO2.3 dal层...

实验一 Windows系统安全实验【网络安全】

实验一 Windows系统安全实验【网络安全】前言推荐实验一 Windows系统安全实验3.1 帐户和口令的安全设置3.1.1 实验目的3.1.2 实验环境3.1.3 实验内容和步骤1. 删除不再使用的帐户并禁用guest帐户2.启用密码策略和帐户锁定策略3.查看“用户权限分配”4.查看“用户组权限分配”5.…...

蓝桥杯正确的解题姿势

在做算法题的过程中最忌讳的就是上来就一顿乱敲&#xff0c;一开始我就是这样&#xff0c;但随着不断的刷题和老师的指导&#xff0c;总结了自己的刷题方法 示例题目 三角回文数 问题描述 对于正整数 n, 如果存在正整数 k使得 n123...kk(k1)/2 , 则 n 称为三角数。例如, 66066 …...

【mysql】性能优化

目录一、硬件与操作系统二、架构设计层面的优化三、mysql程序配置优化四、mysql执行优化一、硬件与操作系统 1.使用高性能cpu&#xff0c;提高计算能力 2.增大可用内存&#xff0c;提高读取能力 3.提高硬盘的读写速度&#xff0c;使用专用的固态硬盘 4.增大网络带宽&#xff0c…...

Jupyter安装与远程使用过程记录

Jupyter安装与远程使用过程记录 文章目录Jupyter安装与远程使用过程记录Jupyter在线试用在服务器上安装Jupyter Notebook配置服务器远程连接首先保证ip地址连通性其次开启服务器访问端口然后在服务器启动服务最后测试连通性后续使用教程Jupyter在线试用 官网适用&#xff0c;感…...

Swift入门

基本数据类型 Int、UInt&#xff1a;整数型、非负整数Float、Double&#xff1a;单精度浮点数、双精度浮点数Bool&#xff1a;布偶值String、Character&#xff1a;字符串、字符 其他类型 Array, Dictionary&#xff1a;数组、字典StructClassvar&#xff1a;变量let&#x…...

【HashMap】jdk1.8中HashMap的插入扩容源码学习分析

jdk1.8中HashMap的插入扩容源码学习分析 一、成员变量 首先介绍HashMap中各个成员变量的作用&#xff0c;在HashMap中有以下成员变量 size记录了HashMap中键值对的个数 loadFactor&#xff08;加载因子&#xff09;用来决定size达到容量的百分之多少时触发扩容机制 默认是0…...

Linux编译器-gcc/g++ 使用

在介绍gcc/g的使用前我们先了解一下两者的不同 gcc时主要编译c语言&#xff0c;而g主要编译c的&#xff0c;但是两者的选项是相同的&#xff0c;因此我们以gcc和c语言为例来讲解。背景知识 gcc和g都是编译器其核心作用将文本类文件翻译成二进制可执行 那么其过程是怎样的&…...

网络安全专家最爱用的9大工具

网络安全专家&#xff0c;不是你认为的那种搞破坏的 “黑客”。网络安全专家&#xff0c;即 “ethical hackers”&#xff0c;是一群专门模拟网络安全专家攻击&#xff0c;帮助客户了解自己网络的弱点&#xff0c;并为客户提出改进建议的网络安全专家。 网络安全专家在工作中&a…...

Linux内核设计与实现第四章学习笔记

文章目录Linux内核设计与实现第四章学习笔记具体场景Linux调度算法传统的调度公平调度调度的实现时间记账调度器实体虚拟实时进程选择调度器入口睡眠和唤醒抢占和上下文切换用户抢占内核抢占实时调度策略Linux内核设计与实现第四章学习笔记 进程优先级&#xff1a;Linux中采用…...

i.MX9352——介绍一款多核异构开发板

本篇来介绍一款多核异构的Linux开发板——OK-MX9352-C开发板。 1 开发板硬件介绍 OK-MX9352-C开发板由核心板和底板组成&#xff0c;核心板采用处理器芯片为NXP的i.MX9352&#xff0c;这是一款多核异构的芯片&#xff0c;核心板基础配置如下 CPU&#xff1a;2Cortex-A551.5G…...

【Python】一文学会面向对象?当然可以的

文章目录前言一、万物皆对象二、类也是对象三&#xff0c;元类总结前言 在大家学习python的时候&#xff0c;一定听说过一句话&#xff1a; 在我们python中万物皆对象&#xff0c;不管是整数、字符串、列表、字典这些基本数据类型&#xff0c;还是函数、以及自定义类创建出来…...

ElasticSearch - SpringBoot整合ES:精确值查询 term

文章目录00. 数据准备01. ElasticSearch 结构化搜索是什么&#xff1f;02. ElasticSearch 结构化搜索方式有哪些&#xff1f;03. ElasticSearch 全文搜索方式有哪些&#xff1f;04. ElasticSearch term 查询数字&#xff1f;05. ElasticSearch term 查询会不会计算评分&#xf…...

【GPT4】微软对 GPT-4 的全面测试报告(2)

欢迎关注【youcans的GPT学习笔记】原创作品&#xff0c;火热更新中 微软对 GPT-4 的全面测试报告&#xff08;1&#xff09; 微软对 GPT-4 的全面测试报告&#xff08;2&#xff09; 【GPT4】微软对 GPT-4 的全面测试报告&#xff08;2&#xff09;2. 多模态与跨学科的组合&…...

Docker打包exe运行环境

Docker打包exe运行环境 本文运行环境 Window安装Docker环境 修改配置 点击Switch to Window containers OS/Arch 变为 windows/amd64 拉取window镜像 访问Nano Server找到需要的Window版本拉取镜像 运行镜像测试 进入到容器内部 其他内容就自由发挥啦~~ 参考内容…...

springboot+vue田径运动会成绩管理系统java

springboot是基于spring的快速开发框架, 相比于原生的spring而言, 它通过大量的java config来避免了大量的xml文件, 只需要简单的生成器便能生成一个可以运行的javaweb项目, 是目前最火热的java开发框架 田径运动会成绩管理系统&#xff0c;主要的模块包括首页、个人中心、赛…...

我能“C”——详解操作符(上)

目录 1.操作符的分类&#xff1a; 2. 算数操作符 3.移位操作符 4.位操作符 5.赋值操作符 6.单目操作符 7.关系操作符 8.逻辑操作符 THE END 1.操作符的分类&#xff1a; 操作符也叫运算符 算术操作符 移位操作符 位操作符 赋值操作符 单目操作符 关系操作符 逻辑…...

第一章Vue基础

文章目录前端发展史前端三要素JavaScript框架UI框架JavaScript构建工具三端合一什么是VueVue的好处什么是MVVM为什么要使用MVVM环境配置第一个Vue程序声明式渲染模板语法绑定样式数据绑定为什么要实现数据的双向绑定el与data的两种写法条件渲染事件驱动事件的基本用法事件修饰符…...

【虚幻引擎UE】UE5核心效率插件推荐

一、UnrealEditorPythonScripts (基于UE5 的Python支持插件) 支持Python语言基于UE5进行开发 GIT地址:https://github.com/mamoniem/UnrealEditorPythonScripts 二、Haxe-UnrealEngine5 (基于UE5 的Haxe支持插件) Haxe是一门新兴的开源编程语言,是一种开源的编程语言。…...

记录丨阿里云校招生的成长经历

为了帮助大家更好地了解阿里云云原生应用平台团队同学的成长路径&#xff0c;我们采访了6位各个时间点加入阿里云的学长学姐们&#xff0c;希望他们的经历可以帮助到大家。 经历分享 钰诚丨2022年加入阿里云&#xff0c;校招 大家好&#xff0c;我叫钰诚&#xff0c;目前刚来…...

蓝桥杯第14天(Python版)

并查集的使用# 并查集模板 N400 fa[] def init(): # 初始化&#xff0c;默认自身为根接点for i in range(N):fa.append(i)def merge(x,y): # 发现可以合并&#xff0c;默认选x的根节点为根接点fa[find(x)]find(y)def find(x): # 相等就是根结点&#xff0c;不然就递归查找根…...

网站怎么做一盘优化排名/天猫店铺申请条件及费用

VC维含义的个人理解 有关于VC维可以在很多机器学习的理论中见到&#xff0c;它是一个重要的概念。在读《神经网络原理》的时候对一个实例不是很明白&#xff0c;通过这段时间观看斯坦福的机器学习公开课及相关补充材料&#xff0c;又参考了一些网络上的资料&#xff08;主要是这…...

怎么做家政的网站/企业网站的类型

python安装dlib库报错问题及解决方法发布时间&#xff1a;2020-09-01 06:02:57...

服装 公司 网站建设/关键词爱站网关键词挖掘工具

蓝牙耳机是运动和跑步的必备产品&#xff0c;它可以为我们的运动过程增加很多乐趣&#xff0c;无论它是舒适的还是充满节奏的音乐&#xff0c;它也可以带来继续坚持下去的动力。由于它是不可或缺的合作伙伴&#xff0c;我如何选择适合自己的蓝牙耳机&#xff1f;许多运动小白对…...

红包打赏的网站怎么做/百度一下下载

Controllerpackage com.controller;import com.BaseController; import com.entity.Catalog; import com.entity....

怎么跟网站建设公司谈/广州seo工作

接口测试面试题,接口自动化测试面试题&#xff08;1&#xff09; 根据网络资料&#xff0c;总结了以下一些常见的接口测试面试题&#xff1a; 为什么要做接口测试&#xff1f; 接口测试能发现哪些问题&#xff1f; 接口测试怎么测&#xff1f; 用什么工具测接口&#xff1f; We…...

网站建设 新闻/seo的定义

2019独角兽企业重金招聘Python工程师标准>>> 1、一致性原则&#xff1a;适用于各种设计场景&#xff0c;比如系统架构设计中操作系统、软件版本都要一致&#xff0c;便于管理便于自动化部署&#xff0c;试想一下&#xff0c;假如你们公司用了各种操作系统、各种服务…...