废话不多说,直接上实现:

simulus是gray码信号发生器的实现:simulus.h:

include "base.h"

#ifndef SIMULUS

#define SIMULUS

const unsigned int size=4;

SC_MODULE(simulus){

//   signal drivers

sc_out > gray ;

void prc_simulus();

sc_uint convert( sc_uint bin );

SC_CTOR(simulus){

SC_THREAD(prc_simulus);

}

};

#endifsimulus.cpp:

#include "simulus.h"

//    使用2进制转化为格雷码

void simulus::prc_simulus(){

//  signal generates process

sc_uint temp(0) ;

for(;;){

gray = (convert(temp));

temp++ ;

wait(100,SC_NS);

}

}

sc_uint simulus::convert( sc_uint bin )

{

sc_uint gray ;

gray = bin^(bin>>1);

//    在此中所有的方法都不支持,

//    只有使用逻辑符号进行操作

return gray ;

}

dut是对格雷码转转二进制的实现:dut.h:

#include "../base.h"

#ifndef DUT

#define DUT

/*********************************

在这个systemC版本中无法使用模版!!!

可能是由于下载的版本过老,很多操作

都没有支持。

(1)模版无法使用,只有通过常数变量来代替

(2)sc内置类型的一些方法无法使用,

只能使用基本的位操作。。。。。

**********************************/

const unsigned int gsize = 4 ;       //   gray to bin convertor ....

SC_MODULE(gb_convertor){

sc_in >gray;

sc_out > bin ;

void prc_gb();

SC_CTOR(gb_convertor){

SC_METHOD(prc_gb);

sensitive<

};

};

#endifdut.cpp:

#include "dut.h"

void gb_convertor::prc_gb()

{

sc_uint  bin_temp = gray.read(), gray_temp = gray.read() ;

while(gray_temp>>=1)

bin_temp ^= gray_temp ;

bin = bin_temp;

}

主要的实现部分已给出,至于其他主函数部分和monitor部分博主就不写了。。。。

格雷码转二进制c语言程序,systemC构建格雷码和二进制的转换相关推荐

  1. 【增强版短视频去水印源码】去水印微信小程序+去水印软件源码

    源码简介与安装说明: 2021增强版短视频去水印源码 去水印微信小程序源码网站 去水印软件源码 安装环境(需要材料):备案域名–服务器安装宝塔-安装 Nginx 或者 Apache php5.6 以上 ...

  2. (已更新)【增强版短视频去水印源码】去水印微信小程序+去水印软件源码

    源码简介与安装说明: 安装环境(需要材料):备案域名–服务器安装宝塔-安装 Nginx 或者 Apache php5.6 以上-安装 sg11 插件 小程序已自带解析接口,支持全网主流短视频平台,搭建 ...

  3. Thinkphp开发微信商城小程序源码拼团小程序源码带后台+前端小程序拼团源码仿拼多多

    码说明:Thinkphp开发微信商城小程序源码拼团小程序源码带后台+前端小程序拼团源码仿拼多多 其它说明: 基于小程序的拼团应用,用户可通过拼团,随时发起拼团活动并分享给好友 拼团是商品营销和售卖的一 ...

  4. 格雷码转换成二进制c语言程序,格雷码与二进制的转换程序

    /* 格雷码与二进制的转换程序 * 本程序采用递推的方法进行推导,可以转换0~2147483647之间的数(1~31位) * 推导方式如下(以三位格雷码为例): * 序号 格雷码 格雷码实值 二进制码 ...

  5. 2021年新微信小程序开发系统源码易客多小程序saas系统扫码点餐小程序支付宝小程序快速生成系统源码源代码

    2021年新微信小程序开发系统源码小程序saas系统扫码点餐小程序支付宝小程序快速生成系统 产品介绍:易客多多合一小程序快速生成系统是厦门四六开科技有限公司开发的快速开发微信百度支付宝小程序生成系统, ...

  6. 智能在线客服系统源码 国际版多语言多商户智能机器人源码

    一套智能在线客服系统源码 多商户网页客服系统源码 支持二十种国际语言 带机器人自动回复. 框架:Thinkphp5+workerman, 环境:nginx+php7.3+mysql5.6 支持H5+公 ...

  7. c语言实现输入任何十进制数,转换为相对应的2进制数 递归,我做的是这个C语言程序:采用递归方法,实现将十进制整数转换成二进制数(含整数部分与小数部分)...

    满意答案 yhATL62 2013.05.05 采纳率:45%    等级:12 已帮助:13717人 我写了个10进制小数,转二进制的程序(包含整数部分和小数部分): #include #defin ...

  8. java数组的二进制查找_Java程序在长数组上实现二进制搜索

    可以使用java.util.Arrays.binarySearch()方法实现对长数组的二进制搜索.如果所需的长元素在数组中可用,则此方法返回其索引,否则返回(-(插入点)-1),其中插入点是元素将在 ...

  9. c语言 gb2312转utf8,嵌入式utf-8转码gb2312的c语言实现,附源码

    部分参考: www.360doc.com/content/12/0926/12/1072296_238242301.shtml https://blog.csdn.net/wyingquan/arti ...

  10. 七彩cms云转码_七彩CMS开源程序-最新云转码全开源 带完整安装搭建教程

    电脑操作系统:centos7.2 x64 网址自然环境:Nginx 1.17.2+PhP7.2+Mariadb 硬件配置主要参数:硬件配置信息内容:4关键解决,8GB ECC运行内存,1Gbps共享资 ...

最新文章

  1. PHP分布式链路追踪,SkyWalking:分布式架构链路追踪-SkyWalking介绍
  2. php 重新载入类文件夹,php-如何配置Behat从应用程序特定文件夹自动加载类
  3. 利用npm安装/删除/发布/更新/撤销发布包
  4. saxparser_使用SaxParser和完整代码进行XML解析
  5. 面试中千万不要出现这些行为,很减分!
  6. 数据可视化系列(六):场景案例显神通
  7. MFC开发-待整理 --VS调试 不会命中断点,源代码与原始版本不同的解决办法
  8. 11.11 Ext JS Tooltip 出错 Uncaught TypeError: Cannot read property ‘contains‘ of null
  9. 三江学院计算机答辩严格,三江学院论文答辩
  10. 2006年 上半年 网络管理员 下午试卷
  11. 使用PHP中的curl发送请求
  12. 纯净菜单栏优化管理:Bartender 4 for Mac支持 Monterey
  13. TPC基准程序及tpmc值
  14. 常用编码与为何要encode和decode
  15. activiti-邮件任务
  16. Hanoi Tower Troubles Again!
  17. Gavin老师Transformer直播课感悟 - BERT多任务Fine-tuning案例实战
  18. listview距离顶端白边
  19. G2Plot 图例(legend)带瞄准图标解决
  20. [bhpyg] QQ互联接口 ,第三方帐号登录

热门文章

  1. dell 戴尔电脑官网保修期查询或驱动下载安装
  2. android bochs,通过 Bochs 让高性能的 Android 手机流畅运行 Windows 虚拟机
  3. 向量叉乘在永磁同步电机电磁转矩计算中的应用
  4. BlackBerry 9850 应用:CISCO WebEx会议
  5. 多语言国家与缩写映射表
  6. XGen 苹果IOS神器一键新机改串清理超级全息备份支持IOS789超IGV8使用分享(企鹅290093670)
  7. 使用Easychm3.9打包chm出现js错误弹窗问题
  8. 网易云音乐显示服务器发生错误,网易云音乐加载失败怎么回事 网易云音乐出现加载失败的有效解决方法...
  9. LED灯具检验标准与方法
  10. 控制系统--线性定常数系统的传递函数