标签:erlang
引言   不知道你是否和我有过同样的感受,《计算机组成原理》这门学科学起来如此的艰难:一节课下来,教室黑板上留下了满满的 “足迹”,看上去也挺简单的,不就是 0 和 1 嘛。但这些看起来简简单单的 0 1 码却成为了我当时学习路上的绊脚石。源码、反码、补码等等等等,各种的码制转换令我一头雾水,我曾
来源:数字逻辑与Verilog设计实验课讲解,个人做的笔记与整理。 00 规范的重要性 良好的编程风格有利于减少消耗的硬件资源,提高设计的工作频率 。 提高系统的可移植性和可维护性。 程序的格式化能体现程序员的基本素质和整个团队的风貌。 01 命名规则 有C语言基础的这部分可以简单略过
本文是对实验课上讲解的“面向硬件电路的设计思维”的总结,结合数字逻辑课本,进行提炼和整理。 主要来源是课件与本人整理,部分参考了网络大佬的博客。 本文主要介绍不同于之前软件设计思维的硬件设计思维,从非阻塞赋值、并行、面积速度转换、同步电路设计原则、模块划分设计、if-case对比等方面进行整理。
问题起因:最初学习数字逻辑设计理论的时候还没有注意到,在实验课上写代码的时候发现了一个问题: 对于源码模块的变量定义,何时定义为reg、何时定义为wire?它们各自又有什么特性和物理意义? 1. wire wire是网络数据类型的关键字。 网络数据类型表示结构实体(例如门)之间的物理连接(线)。网
声明:本程序设计参考象棋巫师源码(开发工具dephi 11,建议用delphi 10.3以上版本)。 第一步我们设计图形界面,显示初始化棋局。效果如下图:  我们先做个3D象棋子控件(请看我的博客关于FireMonkey3D的文章:万能控件Mesh详解),源码如下: unit ChessPie
异步FIFO简介 异步FIFO(First In First Out)可以很好解决多比特数据跨时钟域的数据传输与同步问题。异步FIFO的作用就像一个蓄水池,用于调节上下游水量。 FIFO FIFO是一种先进先出的存储结构,其与普通存储器的区别是,FIFO没有读写地址总线,读写简单,但相应缺点是无法
异步FIFO总结 异步FIFO的基本概念 异步FIFO读写分别采用相互异步的不同时钟,使用异步FIFO可以在两个不同时钟系统之间快速而方便地传输实时数据 FIFO的常见参数 FIFO的宽度:即FIFO一次读写操作的数据位; FIFO的深度:指的是FIFO可以存储多少个N位的数据(如果宽度为N
声明:本程序设计参考象棋巫师源码(开发工具dephi 11,建议用delphi 10.3以上版本)。 上一章我们设计了图形界面,可以开始轮流走棋了。但是,由于没有按中国象棋的规则进行限制,所有的棋子都可以在棋盘上随意走动,这章我们开始制定行棋规则。 2.1、记录局面 在制定规则之前,我们要先考虑把
声明:本程序设计参考象棋巫师源码(开发工具dephi 11,建议用delphi 10.3以上版本)。 这一章计划初步实现搜索算法,前两章基本上按照我自己对中国象棋的理解来设计程序,从这章开始参照象棋巫师算法。 3.1、局面评价   中国象棋共有7种棋子:将(帅)、士、相、马、车、炮、兵,局面评价中
声明:本程序设计参考象棋巫师源码(开发工具dephi 11,建议用delphi 10.3以上版本)。 上一章我们的程序终于会走棋了,不过很多时候它很低能。由于水平线效应,任何变化都只搜索固定的深度。还有,有时它会长将。我们能做哪些改进呢? 本章的目标: 用Zobrist校验码技术实现重复局面判定;
声明:本程序设计参考象棋巫师源码(开发工具dephi 11,建议用delphi 10.3以上版本)。   这一章主要介绍置换表。本章目标: 实现置换表; 采用置换表走法、杀手走法等多种启发方式。 5.1 置换表      没有置换表,就称不上是完整的计算机博弈程序。在搜索过程中,某个搜索结果可能会
  声明:本程序设计参考象棋巫师源码(开发工具dephi 11,建议用delphi 10.3以上版本)。     这一章主要完善算法。本章目标: 实现开局库; 实现PVS(主要变例搜索); 把根节点的搜索单独处理,增加搜索的随机性; 克服由长将引起的置换表的不稳定性。   6.1 实现开局库   
前段时间一次闭门会是读书分享,一位老大哥分享了《精要主义》,最近两次出差,在飞机上把这本书读完,结合工作经历有一些体悟,这里分享出来给大家讨论。 第一、《精要主义》是一本什么样的书? 首先,我们回答这个问题,《精要主义》到底是什么样的书籍? 《精要主义》是一本“提升认知”类的书籍,它提供一套【思
项目背景   因为公司需要对音视频做一些操作,比如说对系统用户的发音和背景视频进行合成,以及对多个音视频之间进行合成,还有就是在指定的源背景音频中按照对应的规则在视频的多少秒钟内插入一段客户发音等一些复杂的音视频操作。本篇文章主要讲解的是使用C#进程(Process)调用FFmpeg.exe进行视
“我是旧时代的残党,新时代没有承载我的船。” 如果面向对象编程是一个人,我猜他自己在不断被非议的今天,一定会这样感慨。 说实话,我用面向对象方式编程已经十几年了,我做架构设计离不开它,做系统分析离不开它,编码的时候更是严重依赖它,我对面向对象无论是思想上还是写代码上都对它是有很深的感情。 刚学 J
写在前面 3 年的硕士生涯一转眼就过去了,和社交网络也打了很长时间交道。最近突然想给自己挖个坑,想给这 3 年写个总结,画上一个句号。回想当时学习 R 语言时也是非常戏剧性的,开始科研生活时到处发邮件要源代码,发完最后一封本以为又是无功而返,很意外的收到了秒回的邮件,邮件中附上了由 R 语言编写的
本章会从 R 语言中最基本的数据类型开始介绍,在此之后就可以开始 R 语言实践了。对社交网络分析而言,我们在处理字符串上所花费的时间要远远大于处理数字的时间,因此本章还会介绍常用的字符串处理操作。 变量 字符串 字符串的创建 特殊字符的转义 字符串的其他常用操作 变量 R 语言中基本的数据类型包
在第二章介绍了 R 语言中的基本数据类型,本章会将其组装起来,构成特殊的数据结构,即向量、矩阵与列表。这些数据结构在社交网络分析中极其重要,本质上对图的分析,就是对邻接矩阵的分析,而矩阵又是由若干个向量构成,因此需要熟练掌握这些特殊的数据结构。 向量 向量的创建 向量元素的访问 向量的运算 向量的
前三章中列出的大多数示例代码都很短,并没有涉及到复杂的操作。从本章开始将会把前面介绍的数据结构组合起来,构成真正的程序。大部分程序是由条件语句和循环语句控制,R 语言中的条件语句(if-else)和 C 语言中类似此处就不再介绍,循环语句包括 for 和 while 控制块。循环是社交网络分析的主