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

做pc端网站如何wordpress 页面 自定义

做pc端网站如何,wordpress 页面 自定义,东莞市官网网站建设企业,电子商务网站建设与管理第二版答案1、内建数据类型 verilog有两种基本的数据类型:变量和线网,他们各自都可以有四种取值:0 1 z x; RTL代码使用 变量 来存放组合和时序值;变量可以是单bit或者是多bit的无符号数 reg [7:0] m, 32bit的有符号…

1、内建数据类型

        verilog有两种基本的数据类型:变量和线网,他们各自都可以有四种取值:0 1 z x;

RTL代码使用 变量 来存放组合和时序值;变量可以是单bit或者是多bit的无符号数  reg [7:0] m,

32bit的有符号数 integer ,64bit的无符号数 time 或者是 浮点数 real.若干变量可以被一起放在定宽数组里,所有的存储都是静态的,意味着所有变量在tb的时候都是存活的。

        1.1、 logic类型

`timescale 1ns / 1ps
//
// Company: 
// Engineer: 
// 
// Create Date: 2025/03/20 17:24:56
// Design Name: 
// Module Name: logic_data_type
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//module logic_data_type(input   logic   rst_h);parameter   CYCLE = 20  ;logic   q,q_l,d,clk,rst_l   ;initialbeginclk = 1'b0  ;forever #(CYCLE/2)beginclk = ~clk  ;endendassign rst_l    =   ~rst_h  ;not m1(q_l,q)  ;endmodule

        1.2、        双状态数据类型

        相比于四状态数据类型(0,1,x,z),SV 引入的双状态数据类型有利于提高仿真器的性能并减少内存。

        双状态数据类型:可以用  unsigned  约束成无符号数

                        bit                :无符号,width = 1 ;

                        byte             :有符号整数, width = 8 ;

                        shortint        :有符号整数, width = 16 ;

                        int                :有符号整数,width = 32  ;

                        longint          :有符号整数, width = 64 ;

                        real               :双精度浮点

        四状态数据类型:

                        integer          : 有符号整数, width = 32      ;

                        time              :无符号整数, width = 64        ;

         对 四状态值 的检查

if( $isunknown( iport ) == 1 )$display( " @%0t : four state value detected on iport  %b ",$time,iport )    ;

2、定宽数组 

        相比于 veilog 支持的数据选择,SV提供更多的数据类型。

        2.1、        定宽数组的声明和初始化

        定宽数组的声明:          

int    one[0:15]  ;    //都表示 16个 int 的数组  
int    two[16]    ;

        多维数组的声明:

int    one[0:7][0:3]    ;    //两种声明方式都可以
int    two[8][4]        ;

         非合并数据的声明:表示三个temp_one 数组,每个数组有8个数

bit[7:0]    temp_one[3]    ;

         常量数组:

int    one[0:3]    = '{ 0,1,2,3 }    ;   
int    two[0:4]    = '{ 4,5,default:1 } ;//two 为 { 4,5,1,1,1 }

        2.2、        对数组的基本操作

 在数组中使用 for 和 foreach 关键词。

initial
beginbit[31:0]    src[5]    ;bit[31:0]    dst[5]    ;for( int i = 0 ; i < $size(src) ;i++ )src[i]    =    i    ;foreach( dst[j] )dst[j] = src[j]*2    ;end

多维数组的初始化

int    md[2][3]    =    '{ '{ 2,3,4 } , '{ 5,6,7 } }    ;initial
begin$display(" Initial value: ")    ;foreach( md[i,j] )$display(" md[%d][%d] = %0d ",i,j,md[i][j]    )    ;$display(" new value ")    ;md = '{ '{ 9,8,7 } ,'{ 3{32'd5} } }    ;foreach( md[i,j] )$display(" md[%d][%d] = %0d ",i,j,md[i][j]    )    ;        end

        多维数组的打印

initial
beginbyte    twoD[4][6]    ;foreach( twoD[i,j] )twoD[i][j]    =    i*10 + j ;foreach( twoD[i] )beginforeach( twoD[ ,j] )begin$write(" %3d  " , twoD[i][j] )    ;endend    end

        数组的复制和比较

initial
beginbit[31:0]    src[5] = '{ 0,1,2,3,4 }   ;bit[31:0]    dst[5] = '{ 5,4,3,2,1 }   ;if( src == dst )begin$display(" src == dst ")    ;endelsebegin$display(" src != dst ")    ;enddst = src    ;src[0]    =    5    ;$display(" src %s dst ",(src == dst)?"==":"!=" )    ;$display(" src[1:4] %s dst[1:4] ",(src[1:4] == dst[1:4] )?"==":"!="    )    ;end

        同时使用位下标和数组下标

 verilog-1995 不支持 同时使用 数组下标和位下标,verilog-2001取消了这个限制。

initial
beginbit[31:0]    src[5]    =    '{ 5{5} }    ;$displayb(   src[0]     ,,src[0][0]  ,,src[0][2:1]                                   );end

        合并数组   :     等待数组的变化的时候,必须使用合并数组

bit [3:0} [7:0]    data    ;    //4 个 8bit的data的数组

3、动态数组  

            使用动态数组

int    dyn[] , d2[]    ;    //动态数组声明initial
begindyn    =    new[5]    ;    //给dyn分配 5 个空间foreach( dyn[j] )begindyn[j] = j ;endd2 = dyn    ;d2[5]    =    0    ;$display(dyn[0],d2[0]);dyn = new[20](dyn)    ;    //为dyn分解 20 个空间 并复制 原来的数据dyn = new[100]    ;dyn.delete()    ;    // 删除所有元素    end

        使用动态数组保存元素数量不一定的list

bit [7:0]    mask[]    =    '{ 8'b0000_0000 , 8'b0000_0001    ,8'b0000_0010 , 8'b0000_0011    ,    8'b0000_0100 , 8'b0000_0111    ,8'b0000_1000 , 8'b0000_1111    ,8'b0001_0000 , 8'b0001_1111                       };

         可以把一个 顶宽数据 复制到 动态数据,SV会为动态数组分配空间(new[ ])并复制数组。

 4、队列

         队列的操作:队列的常量不用 ' 。


module  demo_2_9();
int j = 1    ,q2[$]    =    { 3,4 }    ,    //队列的声明q[$]     =    { 0,2,5 }  ;initialbeginq.insert(1,j)    ;    //插入元素
//        q.insert(2,q2)   ;q.delete(1)      ;    //删除第一个元素q.push_front( 6 )    ;    //在q的前面插入 6 q.push_back( 8 )     ;    //在q的后面插入 8 q.pop_back           ;    //删除最后一个元素并返回新的长度q.pop_front          ;    //删除第一个元素并返回旧的的长度foreach( q[i] )begin$display( q[i] )    ;endq.delete        ;    //删除q这个数组end
endmodule

队列操作

    int j   =   1       ,q2[$]   =   { 3,4 } ,q[$]    =   { 0,2,5 }   ;int len_q = 0       ;initialbeginq = { q[0],j,q[1:$] }       ;q = { q[0:2],q2,q[3:$] }    ;q = { q[0],q[2:$] }         ;q   = { 6,q }   ;len_q   = q[$]      ;//将q的长度复制给 jq   = q[0:$-1]  ;//删除队列最后一个数q   = { q,8 }   ;//在q之后插入 8j   = q[0]      ;q   = q[1:$]    ;q   = {}        ;//删除队列end

 

 

 

http://www.dtcms.com/wzjs/807808.html

相关文章:

  • h5 php mysql网站开发杭州网站设计公司
  • 直播做ppt的网站有哪些建设网站需要什么信息
  • cms wordpress主题seo快排优化
  • 如何制作一个自己的网站毕业设计题目
  • 部署个人网站百度app打开
  • 做淘宝网站的自学程序员怎么入门
  • 溧阳网站建设东莞推广公司
  • 网站套餐报价wordpress流量
  • 西安网站制作价格建设网站西安
  • 网站上微信的链接怎么做网站开发的流程图
  • 如果建立网站某网站项目策划书
  • 北京品牌高端网站建设公司国内免费的vps
  • 网站建设 方案下载如何给网站做关键字
  • 龙岗网站制作市场长春火车站官网
  • 天津做网站报价网站设计培训学校有哪家
  • 为什么做的网站在谷歌浏览器打不开wordpress怎么给别人建站
  • 花店网站建设环境分析山东个人网站备案
  • 写作网站哪个比较赚钱中国互联网排名前十的公司
  • 个人怎么做ckmov解析网站网站制作接单
  • 大学网站栏目建设中国航发网上商城网址
  • 网站的展现形式北京双井网站建设
  • 织梦网站如何打通百度小程序青岛网站seo技巧
  • 电脑自带做网站的软件介绍自己公司的范文
  • 河南大学学科建设处网站精品展厅设计
  • 大连公司网站建设网站建设环境搭建心得体会
  • 桥东区网站建设中标公告 网站建设
  • 网站建站视频万全做网站wl17581
  • 免费建站分类信息网网站软文推广网站
  • 试分析网站推广和优化的原因用系统建购物网站
  • 聊城市东昌府区建设局网站搞一个卖东西的网站怎么做