![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
程序设计-计算机原理
文章平均质量分 92
SauronKing
这个作者很懒,什么都没留下…
展开
-
补码的乘法-布斯乘法
本篇文章讲解如何通过逻辑门的形式来实现补码的乘法操作。原创 2024-01-04 14:39:50 · 1479 阅读 · 1 评论 -
桶式移位器
本篇文章介绍CPU的核心部件之一:桶式移位器,简称BS,英文全称为Barrel Shifter桶式移位器最大的特点就是。原创 2024-01-03 15:24:02 · 1662 阅读 · 0 评论 -
锁存器触发器
本篇文章介绍触发器触发器是这样一种电路实现,触发器有一个控制输入端和一个数据输入端,触发器的特点是可以保存数据输入的信息。原创 2023-12-29 14:28:20 · 963 阅读 · 0 评论 -
并行进位加法器
使用⨁\bigoplus⨁表示异或使用号表示或AB表示A与B我们从不断优化的方案可以看出时间和空间的权衡方案,性能和速度的提升几乎必然伴随着电路的复杂度提高,需要更多的空间来安排电路的排线,需要更多的空间来放置更多的逻辑门。本篇文章完成时,荷兰的2纳米光刻机已经开始交付给intel。可预见的是,集成电路还会有大幅提升的空间。原创 2023-12-28 18:22:09 · 1424 阅读 · 0 评论 -
逻辑运算加法器
逻辑门本质上操作的是单个二进制数,通过高低电压或者有无信号来表示,并且,因为二进制数的原因,一个数字,我们可以通过二进制数来表示,整数可以精确表示,浮点数可以近似表示本篇文章使用逻辑门来构建加法器git地址:https://gitlab.com/lingyanTools/comvirtual.git。原创 2023-12-25 18:10:07 · 1146 阅读 · 0 评论 -
基本的逻辑门
本篇文章介绍基本的逻辑门,然后给出C语言描述逻辑门是在集成电路上的基本组件。简单的逻辑门可由晶体管组成。这些晶体管的组合可以使代表两种信号的高低电平在通过它们之后产生高电平或者低电平的信号。高、低电平可以分别代表逻辑上的“真”与“假”或二进制当中的1和0,从而实现逻辑运算。原创 2023-12-25 13:27:11 · 1103 阅读 · 0 评论 -
电路原理-基本概念
本篇文章介绍电子世界的基本概念。原创 2023-12-22 16:39:34 · 522 阅读 · 0 评论 -
芯片制造流程简介
一种材料根据原子的组织结构分为晶体和非晶体晶体:原子在材料中重复排列成非常固定的结构非晶体:原子在材料中没有周期性的排列和固定的结构对于晶体结构,也分为两个级别:晶胞:一定数量的原子通过特定的相对位置排布形成的一种结构,这种结构作为基本单元在晶体里重复的排列。每种材料都有不同的晶胞结构,比如硅的晶胞就是16个原子排列成金刚石结构单晶和多晶:根据晶胞在排列方式区分,如果晶胞不是规则排列的,称这种材料具有多晶结构,如果晶胞是规则排列的,称这种材料具有单晶结构芯片制造,需要使用单晶结构的硅晶片。原创 2023-12-21 15:26:39 · 1536 阅读 · 0 评论 -
从灯泡到晶体管
本篇文章之所以强调电路的串并联,是因为他们是组合逻辑的基本要求,而我们为了理解计算机原理,必须使用逻辑门来模拟计算机行为本篇文章没有讲述电路相关的东西,是因为我们是为了理解计算机原理,不是为了制造计算机,知道晶体管的使用方式就可以了,后面我们会使用C语言模拟逻辑门。原创 2023-12-20 15:09:37 · 914 阅读 · 0 评论 -
程序是怎么跑起来的
存储器是能够保存数据的设备,我们熟悉的内存就是一种存储器,我们的程序代码就是保存到内存中的,另外一类存储器叫做通用寄存器,通常保存我们的机器指令执行的临时数据。经过前期的调研,立项,产品设计,UI设计,代码编写,产品测试等等一系列复杂的程序,多个人的集体合作,经过一定的时间以后,我们这个产品可能已经算是完成。从源代码到可运行的程序需要经过四步的工作,具体的流程可以参考文章。一般的情况,这是一门高级编程语言,可以是C/C++,可以是Python,可以是Object-C/Swift,也可以是Java等等。原创 2023-12-15 17:24:30 · 872 阅读 · 0 评论 -
unicode详解
unicode的中文翻译为统一码,也叫万国码、单一码,由统一码联盟开发,是计算机科学领域里的一项业界标准。简单的来看,unicode就是一个数字,每一个数字对应一个字符的编码,这个字符囊括了整个世界使用的全部语言和符号的字符,所以,从根本上来说,unicode就是一个映射表,一个从数字到文字的映射。原创 2023-12-14 17:39:02 · 15045 阅读 · 0 评论 -
浮点数的加减运算
本篇文章介绍浮点数的加减运算。原创 2023-11-17 17:34:37 · 1755 阅读 · 0 评论 -
浮点数在内存中的表示
如果进行过类似7.3×e−407.3×e−40的测试,你可能会发现,这种编码规则增大了浮点数在接近0的表示精度。原创 2023-11-17 15:04:46 · 105 阅读 · 0 评论 -
十进制浮点数转二进制
对于一个十进制表示的浮点数,怎么把他表示成二进制呢?一直到商为0,然后把余数反着写出来,上面的例子就是。最后给出一个十进制浮点数转二进制浮点数的算法。对于上面的例子,整数部分是。,可以使用除2求余数的方法。对于上面的例子,小数部分是。原创 2023-11-17 10:36:47 · 333 阅读 · 0 评论 -
计算机中的整数运算
本文章主要介绍整数运算的内存表示,不是介绍运算的过程,具体运算的过程需要CPU逻辑处理单元的介入,这个后面的文章在介绍。本文主要分为下面几个方面:无符号整数的加法有符号整数的加法无符号整数的乘法有符号整数的乘法乘以常数的优化无符号整数的除法有符号整数的除法。原创 2023-11-08 17:29:32 · 184 阅读 · 1 评论 -
深入理解计算机中的整数
当执行一个运算时,如果它的一个运算数是有符号的而另一个是无符号的,那么C语言会隐 式地将有符号参数强制类型转换为无符号数,并假设这两个数都是非负的,来执行这个运算。现代计算机的内存种类多种多样,我们抛开不同种类内存在物理结构和使用方式上的不同,从宏观上看,所有的内存都是为了存储数据的,并且所有内存的最小单位都是。我们在写代码的过程中,整数是用的最多的一种变量类型,整数的分类按照内存占用大小,大体可以分为。(Bit),所以我们使用到的内存其实是下面这样的一个图,下图只代表一大块内存的一小部分。原创 2023-11-06 17:28:35 · 162 阅读 · 0 评论