【计组】学习笔记1.1:8421码和ASCII码
8421码
8421码即BCD码,由于人们习惯日常使用十进制数,而计算机处理时使用的是二进制数,而两种数制相互转换十分麻烦,因此产生了8421码映射关系。其映射运算例如:
1001转化为十进制数9:1*8+0*4+0*2+0*1 = 8+0+0+1 = 9
而8421分别为每组数从左到右每一位的权值,即每一位数在向十进制数转化过程中乘的数,而8421码的每一位都是0或1,共两种状态,则四位数共有4^2 = 16种状态,8421取前十种状态作为自己的映射组。
8421码的加法运算:
如
十进制: 8 + 3 = 1 1
8421码:1000 + 0011 = 0001 0001
注意:8421码中1010-1111是没有十进制数与之对应,因此在计算结果超出1001时需要进行结果修正,即进位,由以上例子可见十进制计算结果为11,8421计算结果为10001,则修正为计算结果0001 0001,分别对应11的两个1,写的时候可以省略掉开头的零,即灰色的部分。
余3码和2421码
8421码映射最后出现了1010-1111没有映射的值,即取四位数为一组取十六种状态中的十种,同理的还有余3码和2421码,同样是取四位为一组和十进制的0-9作映射。
8421码中每一位都是二进制数,权值是2,2421码则是改变权值来进行转化运算的,每一组2421码四位数从左到右的权值分别为2421,因此在向十进制转化时要注意权值。例如:
1111转化为对应的十进制数9的运算:1*2+1*4+1*2+1*1 = 2+4+2+1 = 9
ASCII码
在很多学生初学C语言等编程语言时候就初步接触过ASCII码。
键盘中很多键都可以打出两个字母、数字或者符号,细心的同学可能会数一下一共可以打出128个常用字符,ASCII码就是与之相对应的
而计算机处理问题过程中是使用8bit位进行运算的,而128仅仅是2的七次方,所以通常会在前面加上第八位来构成1b,即一个字节。
计算机分辨键入字符就是通过ASCII码进行的,存放也是通过ASCII码进行存放。而ASCII码在计算机存放则是通过上面提到的八位二进制数。例如计算机中存放字母A,A对应ASCII码是65,计算机通过01000001来存放ASCII码65,对A进行一个间接存放。
ASCII码的映射表如下:
ASCII码中数字的映射和字母的映射其的规律
数字的规律:0-9十个数字对应的ASCII码分别为48-57,48-57转化二进制数是00110000-00111001。通过观察我们不难发现前四位都是0011,而后四位正是0-9十个十进制数字对应的8421码。
字母的规律:
大字母对应的ASCII码为:65(010 00001)-90(010 11010)
大字母对应的ASCII码为:97(011 00001)-122(011 11010)
通过观察,我们发现字母对应的ASCII码转化成二进制时前三位大写都是010,小写都是011,后五位则是十进制数1-26转化成二进制后的五位数映射,分别对应了A-Z、a-z。
【计组】学习笔记1.1:8421码和ASCII码相关推荐
- 计组学习笔记(一):浮点数的表示和运算
最近学习计算机组成原理,遇到许多疑难问题,接下来写一写我在学习浮点数方面知识的理解,在巩固的同时也方便日后的复习. 一.浮点数的表示 1.浮点数的表示格式 浮点数,顾名思义,就是小数点不固定的数.计算 ...
- 计组学习笔记之总线系统
目录 总线的概念和结构形态 总线的基本概念 总线的分类 总线的物理实现 总线的特性 总线的性能指标 总线的连接方式 单总线结构 双总线结构 三总线结构 多总线结构 总线的内部结构 早期总线内部结构 现 ...
- 计组学习笔记(四):高速缓冲存储器Cache
一.为什么要有Cache 我们知道存储器的层次结构为,CPU-->寄存器--Cache--主存--磁盘--磁带.光盘,假设没有Cache这一层,那就相当于我CPU要想找东西直接去主存找,CPU速 ...
- 计组学习笔记2(RISC v版)
指令集解释 (规定:R[r]表示通用寄存器r的内容,M[addr]表示存储单元addr的内容,SEXT[imm]表示对imm进行符号扩展,ZEXT[imm]表示对imm进行零扩展) 整数运算类 -U型 ...
- 总线标准 (计组学习笔记)
愿世间美好与你环环相扣 ! 本章内容了解即可 文章目录 基本概念 总线标准 系统总线 ISA与EISA 局部总线 PCI AGP PCIE VESA 设备总线 USB 总线 RS-232C IDE S ...
- 计组学习笔记之CPU(3)——硬布线控制器和微程序控制器
目录 控制器 控制器的结构和功能 硬布线控制器 硬布线控制器的定义 硬布线控制器结构 逻辑网络输入信号的三个来源 硬布线控制器的基本原理 微操作控制信号 微操作控制信号的产生 安排微操作时序的原则 微 ...
- 计算机各个部件配合完成加减乘除(计组学习二)
大家好,我是贺贺. 计算机组成原理系列 计算机的五大组成部分(计组学习一) 计算机各个部件配合完成加减乘除(计组学习二) 预热一下 当我们了解了计算机的五大组成部分后,下面我来聊聊计算机的各个部件是怎 ...
- 计算机的五大组成部分(计组学习一)
大家好,我是贺贺,一个爱唱歌但是五音不全的程序员 计算机组成原理系列 计算机的五大组成部分(计组学习一) 计算机各个部件配合完成加减乘除(计组学习二) 计算机的故事 在开始啃计算机组成原理(下文简称计 ...
- glibc-2.23学习笔记(二)—— free部分源码分析
glibc-2.23学习笔记(二)-- free部分源码分析 _libc_free _int_free 函数定义 局部变量 start fast bins部分 unsorted bins部分 mmap ...
- glibc-2.23学习笔记(一)—— malloc部分源码分析
glibc-2.23学习笔记(一)-- malloc部分源码分析 搭建Glibc源码调试环境 1.下载并解压glibc源码 2.配置gdb 3.编译测试程序 第一次调用 源码分析 __libc_mal ...
最新文章
- 使用jdk生成ssl证书文件
- ubuntu安装OpenCV详细教程(建议收藏)
- 关于C++对象模型的一点理解(2)
- Python小游戏(24点小游戏)
- mysql 5.6 生产my.cnf_一个生产可用的mysql参数文件my.cnf
- 简单又帅气的折纸机器人教程_几张纸做出帅气纸飞机,做法简单飞行速度超快,手工折纸飞机...
- 说明assert()的作用:assert()是一个调试程序时经常使用的宏,在程序执行时计算括号内的表达式,如果表达式为假,程序报告错误,并终止执行;若表达式为真,则继续执行后面的语句。
- 服装管理解决方案丨汇信
- R语言建立Cox回归模型(包含所有协变量)比较不同治疗方法生存率的差异、predict函数对cox模型进行新数据的预测、计算不同样本的风险比HR(hazard ratio)
- 一小心删除了系统文件NTDETECT.COM怎么办
- XML配置文件的读取
- UDP 头部结构及协议特点
- java md5类_java的md5加密类
- API 的理解与使用- 键管理
- springboot热部署该怎么实现?springboot热部署实现方式
- JS逆向之美团网模拟登录!这教程杠杠滴~
- 徐绽词汇笔记(摘抄)
- tp部署了admin.php如何显示页面,深度解析ThinkPHP5设置模板路径
- 自采集电脑壁纸网站PHP源码vV2.0+自适应WAP端
- 把数字转换为人民币大写(用于银行系统)