摘要:
概念 字符是一个信息单位,在计算机里面,一个中文汉字是一个字符,一个英文字母是一个字符,一个阿拉伯数字是一个字符,一个标点符号也是一个字符。 字符集也叫字符串是字符组成的集合,通常以二维表的形式存在,二维表的内容和大小是由使用者的语言而定,是英语,是汉语,还是阿拉伯语。 字符编码是把字符集中的字符编
阅读全文
posted @ 2022-06-20 16:43
小林野夫
阅读(515)
推荐(0)
摘要:
进制计数法 进制计算公式 基数:每个数码位所用到的不同符号的个数,r进制的基数为r ①可使用两个稳定状态的物理器件表示 ②0,1正好对应逻辑值假、真。方便实现逻辑运算 ③可很方便地使用逻辑门电路美现算术运算 任意进制转十进制 二进制<- ->八进制、十六进制 十进制转二进制 十进制75.3转成的二进
阅读全文
posted @ 2022-06-20 16:36
小林野夫
阅读(1927)
推荐(1)
摘要:
计算机中整数以补码的形式存储 正数的补码等于原码;负数的补码等于反码加1,而反码等于原码符号位不变,其余各位取反。为了简化计算机基本运算电路,使加减法都只需要通过加法电路实现,也就是让减去一个正数或加上一个负数这样的运算可以用加上一个正数来代替。于是改变负数存储的形式,存储成一种可以直接当成正数来相
阅读全文
posted @ 2022-06-20 01:10
小林野夫
阅读(2824)
推荐(0)
摘要:
定点整数 长度相同的无符号和有符号数转化 无符号数与有符号数:不改变数据内容,改变解释方式。 C 中的int short 等类型都是用补码的形式存储的。 short x=-4321; 内存中存储为X:1110 1111 0001 1111 计算机真值显示为:-4321 unsigned short
阅读全文
posted @ 2022-06-20 00:40
小林野夫
阅读(822)
推荐(0)
摘要:
1 2 14 2 2 8补码的除法运算 - YouTube (1)被除数和除数同号,则被除数减去除数;异号则被除数加上除数。 (2) (3)余数和除数同号,商1,余数左移一位减去除数;余数和除数异号,商0,余数左移一位加上除数。重复n次 (4)最后一位商 恒置为“1”。目的省事,误差不大 (5) 补
阅读全文
posted @ 2022-06-20 00:06
小林野夫
阅读(1811)
推荐(0)
摘要:
原码的除法步骤 (1)除了 符号位外的,其他运算和十进制除法一样。 (2)除数和被除数符号位 独单 异或运算的结果作为商的符号 1)计算机第一次除,默认商为1 然后进行运算,等到的结果存储到ACC中,然后去检测ACC 符号位,发现是负数,马上将第一个的商修改为0。 接着将ACC的值(余数)+(除数)
阅读全文
posted @ 2022-06-19 23:52
小林野夫
阅读(8234)
推荐(2)
摘要:
补码的一位乘法背景 两个数的相乘,可以转化为 它的补码相乘,然后再求乘积的补码 。例如: 注意: 1.1101的真值为x=-0.1101 ,详细请看真值 ACC补码采用算数右移,ACC 的符号位不参与移动。其他和原码一样。 2种[x]补转向[-x]补方法 (1)[x]补符号位、数值位全部取反,末位+
阅读全文
posted @ 2022-06-19 18:26
小林野夫
阅读(2761)
推荐(0)
摘要:
真值 因为最高位是符号位,所以机器数的形式值就不等于真正的数值。例如上面的有符号数 10000011,其最高位1代表负,其真正数值是 -3 (10000011转换成十进制等于131)。 所以,为区别起见,将带符号位的机器数对应的真正数值称为机器数的真值。 例:0000 0001的真值 = +000
阅读全文
posted @ 2022-06-19 17:39
小林野夫
阅读(2111)
推荐(0)
摘要:
十进制乘法的思想 最低位相乘=就等底不变 指数相加 例如:10-3*10-3=10-6 因此相乘时,结果都要错位。 二进制乘法 将十进制引入二进制 (1) 数值位 乘法,如:|数值位|*|数值位| (2)符号位异或 计算机如何处理乘法? (1)初始状态,A(X)*B(MQ) 原码的一位乘法:乘数每次
阅读全文
posted @ 2022-06-19 15:43
小林野夫
阅读(5002)
推荐(0)
摘要:
概览 溢出情况 溢出知乎发生在同符号位置的加法运算:例如: (-123)+(-123) 发生溢出 123+123 发生溢出 原码加运算 原码减运算 加法溢出 减法运算可以转成加法运算。 公式 :正+正=负数 说明溢出 负+负=正数 说明溢出 减法会被转化成加法 设机器字长为8位(含1位符号位),A=
阅读全文
posted @ 2022-06-19 14:30
小林野夫
阅读(3317)
推荐(0)
摘要:
概览 (1)软件质量的标准:可复用性+可维护性 (2)7大设计原则 (3)23 种Gof设计模式 5种创建型设计模式横向对比 创建型设计模式主要作用是将一个对象的创建者和使用者分离。 7种结构型设计模式横向对比 结构型设计模式主要作用是将多个类或者对象组合使其功能更加丰富。 11种行为型设计模式横向
阅读全文
posted @ 2022-06-19 02:41
小林野夫
阅读(40)
推荐(0)
摘要:
一. 什么是迪米特法则 迪米特法则(Law of Demeter )又叫做最少知识原则,也就是说,一个对象应当对其他对象尽可能少的了解。不和陌生人说话。英文简写为: LoD。 迪米特法则的目的在于降低类之间的耦合。由于每个类尽量减少对其他类的依赖,因此,很容易使得系统的功能模块功能独立,相互之间不存
阅读全文
posted @ 2022-06-19 02:24
小林野夫
阅读(882)
推荐(0)
摘要:
概览 1 2 9 2 2 3移位运算 - YouTube 位移 小数和整数位移 对于定点数,是无法改变小数点的位置的,因此只能通过移动数字,来改变相对小数点的相对位置,来改变位权。移位:通过改变各个数码位和小数点的栩对位置,从而改变各数码位的位权。可用移位运算实现乘法、除法。 反码的位移 正数的反码
阅读全文
posted @ 2022-06-18 16:20
小林野夫
阅读(586)
推荐(0)
摘要:
由于计算机的减法器 ,造价高,所就用加法器来运行加法计算,原理如下: 减法运算的原理 为啥减法运算可以转化成加法运算,原理是什么? 以下举例:以mod=12(时钟) x mod m=? 补充知识点 来源:数论 整数:包含负整数 、0、正整数 余数的定义 数论中余数的定义 :如果a和d是两个自然数,d
阅读全文
posted @ 2022-06-18 15:58
小林野夫
阅读(1102)
推荐(0)
摘要:
x mod m=? 补充知识点 来源:数论 整数:包含负整数 、0、正整数 余数的定义 数论中余数的定义 :如果a和d是两个自然数,d非0,可以证明存在两个唯一的整数q和r,满足a = qd + r 且0 ≤ r < d。 其中,q被称为商(整数), r被称为余数。 -3 =(-1)*12+99 =
阅读全文
posted @ 2022-06-18 14:45
小林野夫
阅读(1400)
推荐(0)
摘要:
定点表示 机器数中的小数点位置是固定不变的,小数点不再使用“.”表示,而是约定它的位置。小数点:隐含存储(定点数:事先约定;浮点数:按规则浮动) 这里有两种简单的约定,将小数点的位置固定在数据的最高位之前,或固定在最低位之后。一般称前者为定点小数后者为定点整数。 定点小数 +0.75 = 0.11B
阅读全文
posted @ 2022-06-18 13:59
小林野夫
阅读(2232)
推荐(1)
摘要:
最近在看CRC算法,但是发现其中“模2运算”不太清楚,就搜找资料,整理了此文章!! 模2运算定义 模2运算是用于二进制的四则运算。模2运算的加减运算就是异或运算, 异或:是不带进位的加法运算,当前计算结果记录的的是不进位的情况。也可以理解成 0 是偶数 1是奇数,奇数+偶数=奇数 , 偶数+偶数=偶
阅读全文
posted @ 2022-06-18 11:50
小林野夫
阅读(1759)
推荐(0)
摘要:
概览 核心算法:模2运算 主要应用 “模2运算”应用十分广泛,主要应用于数据存储及数据传输、数据通信时对数据正确性的校验方面。著名的通讯协议X.25的FCS(帧检错序列)采用的是CRC-CCITT,WinRAR、NERO、ARJ、LHA等压缩工具软件采用的是CRC32,磁盘驱动器的读写采用了CRC1
阅读全文
posted @ 2022-06-18 11:21
小林野夫
阅读(307)
推荐(0)
摘要:
概览 海明码是基于偶校验的。能纠错一个bit的信息错误,能检测2个bit的信息错误。
阅读全文
posted @ 2022-06-18 02:53
小林野夫
阅读(187)
推荐(0)
posted @ 2022-06-18 02:40
小林野夫
阅读(75)
推荐(0)
摘要:
字符集ASCII 1=列0011+ 行0001 y=F(x):y等于二进制 f等于映射规则 就是指ascii、unicode之类的,x等于字符 编码规律: (1) 组成:列+行 (2)16行 8列,16*8=128 ,行索引:0~127 列索引:0~7 (3)0 A a的低4位都为0001,高四位分
阅读全文
posted @ 2022-06-18 00:22
小林野夫
阅读(900)
推荐(0)
摘要:
概览 什么是BCD码? BCD码是一种二进制的数字编码形式,用二进制编码的十进制代码。这种编码形式利用了4个bit来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。BCD码常用的有8421码、5421码、2421码和余3码,以下为编码表: 十进制数8421码5421码2421码余3码
阅读全文
posted @ 2022-06-17 23:34
小林野夫
阅读(4999)
推荐(0)
posted @ 2022-06-17 21:18
小林野夫
阅读(136)
推荐(0)
摘要:
描述文件大小或存储器容量 1k=210 1M=220 1G=230 1T=240 描述数据的处理速率: K=Kilo=千=103,M=Million=百万=106,G=Giga=十亿=109,T=Tera=万亿= 1012
阅读全文
posted @ 2022-06-17 20:04
小林野夫
阅读(182)
推荐(0)
摘要:
第零级:是硬联逻辑级,是计算机的内核,由门、触发器等逻辑电路组成。第一级:微程序级,这级的机器语言是微指令集,用微指令编写的微程序一般是由硬件执行的。 微程序控制器 微程序逻辑采用存储逻辑实现,其基本思想为:把操作控制信号编制成微指令,存放在存储器中,运行的时候,从存储器中取出微指令,从而产生指令运
阅读全文
posted @ 2022-06-17 18:51
小林野夫
阅读(948)
推荐(0)
摘要:
存储单元用电容器:电容器存储电荷 , 1个充电的电容器在数字电子中被认为是逻辑上的1,而“空”的电容器则是0。电容器不能持久的保持储存的电荷,所以内存需要不断定时刷新,才能保持暂存的数据。内存有1%的时间要用来刷新 以下详细解释程序如何运作的 1、如下一段代码,编译机器码 2、开始运行操作程序
阅读全文
posted @ 2022-06-17 18:30
小林野夫
阅读(194)
推荐(0)
摘要:
DRAM 即动态内存,其基本单位是由一个晶体管和一个电容器组成。请看下图: DRAM组成部分 图只是DRAM一个基本单位的结构示意图:电容器的状态决定了这个DRAM单位的逻辑状态是1还是0,但是电容的被利用的这个特性也是它的缺点。一个电容器可以存储一定量的电子或者是电荷。一个充电的电容器在数字电子中
阅读全文
posted @ 2022-06-17 18:13
小林野夫
阅读(815)
推荐(0)
摘要:
定点小数的取值范围是怎么推算出来的? 今天看计算机组成原理课程的时候,看到定点小数的取值范围是-(1-2^-n)到(1-2^-n)。这是怎么推算出来的呢? 公式推导过程 一个数用(n+1)位存储,原码(反码)用掉一个符号位后,还有n位,如果小数点在最右边,此时表示的是整数,可表示 这些数,把小数点左
阅读全文
posted @ 2022-06-17 17:15
小林野夫
阅读(988)
推荐(0)
摘要:
1.BitMap的应用 在网络同步中(尤其是帧同步),往往需要找一种数据在序列化之后,体积小,数据信息量可观的数据存储方式。 以帧同步为例,一个相当复杂的ACT游戏,采用同步交互量最省的帧同步方式进行网络同步,每关键帧只同步玩家的键位操作数据,此时如果使用BitMap算法进行数据结构的设计,只要1b
阅读全文
posted @ 2022-06-16 21:41
小林野夫
阅读(1307)
推荐(0)
摘要:
原文:https://www.taowong.com/blog/2018/07/10/principle-of-computer-float-num.html 1、精度丢失 作为程序员大家应该都遇到过下面这种情况,用浮点数做运算,发现结果与预期有偏差,比如下面的JAVA代码 public stati
阅读全文
posted @ 2022-06-16 01:19
小林野夫
阅读(733)
推荐(0)
摘要:
1、如何将浮点数转换成二进制呢? 简单概括起来,同样也是一句话: 整数部分依旧采用“除2取余,逆向取值”的方法;而小数部分则乘2取整,直到余下的小数为0或者满足精度要求为止,然后顺序取值(即最先得到的整数为最高位,最后得到的整数为最低位)。 比如:58.625 所以,最终结果就是:11 1010.1
阅读全文
posted @ 2022-06-16 01:11
小林野夫
阅读(4089)
推荐(0)
摘要:
设计模式的六大原则(SOLID) 总原则——开闭原则(Open Closed Principle) 一个软件实体,如类、模块和函数应该对扩展开放,对修改关闭。 在程序需要进行拓展的时候,不能去修改原有的代码,而是要扩展原有代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护
阅读全文
posted @ 2022-06-15 22:45
小林野夫
阅读(303)
推荐(0)
摘要:
在WPF , silverlight ,WP7中经常会用到List<T>和ObservableCollection<T>。这里简单讲一下他们之间的相互转换。 1.List<T>的简单介绍: List<T>代表的是强类型的Ojbect集合,可以通过索引访问并且提供了查找、排序以及操作此集合的方法。Li
阅读全文
posted @ 2022-06-15 17:53
小林野夫
阅读(1043)
推荐(0)
摘要:
概览 总结 如果使用C#语言,其事件和委托本身就是观察者模式的基本实现。除此之外,属性修改通知以及属性依赖等也是观察者模式的用途之一,在WinForm或者WPF中,通常将集合类控件,绑定到集合上,当集合数据发生变化时,绑定的控件能够得到通知,并且能够自动刷新界面。 在C#中使用观察者模式,除了常用的
阅读全文
posted @ 2022-06-15 14:15
小林野夫
阅读(3132)
推荐(0)
摘要:
原文地址:https://www.cnblogs.com/junbird-nest/archive/2012/10/08/2715601.html TextBlock和Label都是用来显示少量数据的。好多文章对Label存在的描述都是它允许使用"快速获取"。"快速获取"就是允许你用Alt加上其它的
阅读全文
posted @ 2022-06-15 02:41
小林野夫
阅读(730)
推荐(1)
摘要:
作的原理是将数组分到有限数量的桶子里。 每个桶子再个别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序)。 桶排序是鸽巢排序的一种归纳结果。 当要被排序的数组内的数值是均匀分配的时候,桶排序使用线性时间 桶排序是计数排序的升级版。它利用了函数的映射关系,高效与否的关键就在于这个映射
阅读全文
posted @ 2022-06-15 00:33
小林野夫
阅读(175)
推荐(0)
摘要:
视频地址:https://www.bilibili.com/video/BV1464y1F7Yx/?spm_id_from=autoNext 计数排序的核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。 作为一种线性时间复杂度的排序,计数排序要求输入的数据必须是有确定范围的整数。计数排序(C
阅读全文
posted @ 2022-06-14 20:33
小林野夫
阅读(339)
推荐(0)
摘要:
背景 计算机系统中经常会遇到这样一类问题:前一个任务已经执行完成,需要在待执行任务中挑选一个新的任务执行。最简单的方法就是将所有的任务排成一个队列,按照队列的先进先出(FIFO)的策略挑选要执行的任务。这种策略虽然保证了所有的任务都能被执行,但是往往会导致执行时间短的或者紧急度高的任务在队列中等待时
阅读全文
posted @ 2022-06-14 20:03
小林野夫
阅读(4408)
推荐(2)
摘要:
System.Collections.Generic 集合和数据结构 接口 ADT IEnumerable 和IEnumberator public interface IEnumerator { bool MoveNext(); object Current { get; } void Reset
阅读全文
posted @ 2022-06-14 00:04
小林野夫
阅读(204)
推荐(0)
摘要:
简介 HashSet<T>类,主要被设计用来存储集合,做高性能集运算,例如两个集合求交集、并集、差集等。HashSet<T> 类可以视为 Dictionary<TKey,TValue> 没有值的集合。 特性: 1.HasSet 中的值不能重复 2.HashSet中的值没有顺序 3.HashSet的容
阅读全文
posted @ 2022-06-13 23:56
小林野夫
阅读(221)
推荐(0)