学计算机基础代码,计算机科学基础知识(示例代码)
1. 计算机科学基础知识
1.1 数制及其转换
二进制、八进制、十进制和十六进制等常用数制及其相互转换
1.2 计算机内数据的表示
数的表示(原码、反码、补码、移码表示,整数和实数的表示,精度和溢出)
原码表示法:最高位是符号位。数值X的原码记为[X]原,如果机器字长为n(即采用n个二进制位表示数据),则原码表示:
[+0]原=0 0000000 [-0]原=1 0000000
[+1]原=0 0000001 [-1]原=1 0000001
[+127]原=0 1111111 [-127]原=1 1111111
[+0.5]原=0 .1000000 [-0.5]原=1 .1000000
反码表示法:数值X的反码记为[X]反,如果机器字长为n,则原码表示:正数的反码表示同原码,负数的反码表示将正数原码表示中的01反过来。
补码表示法:负数的补码表示将正数原码表示中的01反过来再+1。0有唯一补码,全为0。
[+0.5]补=0 .1000000 [-0.5]补=1 .1000000
[+1]补=0 0000001 [-1]补=1 1111111
在计算机系统中常采用补码来表示和运算数据,原因是采用补码可以简化计算机运算部件的设计。
移码表示法:将补码的符号位取反
浮点表示法:阶符 阶码 数符 尾数,例:一个二进制数N可以表示为:N=2E*F,其中2是阶符,E是阶码,F是尾数。浮点数表示的精读取决于尾数的宽度,范围取决于基数的大小和指数的宽度。
对于特定机器而言,指数(阶符)是固定不变的,所以在浮点数中指数并不出现。
计算机在进行浮点数的相加(减)运算之前先进行对阶操作,若x的阶码大于y的阶码,则应将y的阶码扩大至与x的阶码相同,且使y的尾数部分进行算术右移。
非数值表示(字符和汉字表示,声音表示、图像表示)
1.3校验方法和校验码(奇偶校验码、海明校验码、循环冗余校验码)
奇偶校验码:通过在编码中增加一校验位来使编码中1的个数为奇数(奇校验)或者为偶数(偶校验),从而使码距变为2(奇偶校验码添加了1位校验码,使得要变成另一个码字最少要修改两位,这就使其码距变成2)。于奇校验,它可以检测代码中奇数位出错的编码,但不能发现偶数位出错的情况。
将一个码字变成另一个码字时必须改变的最小位数就是码字之间海明距离,简称码距。
根据海明的研究发现,可以发现“≤码距-1”位的错误。
根据海明的研究发现,可以纠正“
海明校验码:在数据位之间的特定位置上插入k个校验位通过扩大码距来实现检错和纠错。
设数据位是n位,校验位是k位,则n和k必须满足以下关系:2k-1≥n+k
G4G3G2G1的十进制值指出了发生错误的位置,将其取反即可纠正错误。
循环冗余校验码(CRC校验码):
求CRC编码采用的是模2运算,按位运算,不发生进位和借位。
CRC校验码的计算:
例如:原始报文为“11001010101”,其生成多项式为:“x 4 +x 3 +x+1”。在计算时,是在原始报文的后面若干个0(等于校验码的位数,而生成多项式的最高幂次就是校验位的位数,即使用该生成多项式产生的校验码为4位)作为被除数,除以生成多项式所对应的二进制数(根据其幂次的值决定,得到11011,因为生成多项式中除了没有x 2之外,其他位都有)。然后使用模2除,得到的商就是校验码。
然后将0011添加到原始报文的后面就是结果:110010101010011。
检查信息码是否有CRC错误:
要想检查信息码是否出现了CRC错误的计算很简单,只需用待检查的信息码做被除数,除以生成多项式,如果能够整除就说明没有错误,否则就是出错了。另外要注意的是,当CRC检查出现错误时,它是不会进行纠错的,通常是让信息的发送方重发一遍。
实际应用时,发送装置计算出CRC值并随数据一同发送给接收装置,接收装置对收到的数据重新计算CRC并与收到的CRC相比较,若两个CRC值不同,则说明数据通信出现错误。
1.4 算术运算和逻辑运算
计算机中的二进制数运算方法
逻辑代数的基本运算
1.5 其他数学基础知识
常用数值计算
排列组合,概率论应用,应用统计(数据的统计分析)
编码基础
命题逻辑、谓词逻辑、形式逻辑的基础知识
运筹基本方法
浮点数表示的精读取决于尾数的宽度,范围取决于基数的大小和指数的宽度。
学计算机基础代码,计算机科学基础知识(示例代码)相关推荐
- 计算机专业学什么代码,计算机科学与技术专业代码,本科计算机科学与技术专业代码查询...
专业代码通常由6位阿拉伯数字组成,前两位代表专业所在门类,中间两位代表专业所在学科,最后两位代表改专业的标识符号.专业代码就是大学,或者其他专科学校,其专业的代码,其实大学也有自己的代码.下面小编为你 ...
- C#dataGridView 知识(示例代码)以及相关的经验技巧
一.单元格内容的操作 // 取得当前单元格内容 Console.WriteLine(DataGridView1.CurrentCell.Value); // 取得当前单元格的列 Index Conso ...
- html风车相册代码,Css Html 大风车(示例代码)
简介这篇文章主要介绍了Css Html 大风车(示例代码)以及相关的经验技巧,文章约3675字,浏览量138,点赞数2,值得参考! div{ border-radius: 50%;position: ...
- linux mv编写代码,Linux命令--mv(示例代码)
简介这篇文章主要介绍了Linux命令--mv(示例代码)以及相关的经验技巧,文章约4069字,浏览量253,点赞数7,值得推荐! Linux--mv mv经常被用来做备份 命令参数: -b :若需覆盖 ...
- ABOV单片机内部中断优先级寄存器IP1x/IPx的设置代码实现讲解及示例代码-[MC96F6332D]
一.准备工作 1.KEIL C51编译环境 2.外部中断EINT示例代码-MC96F6332D 3.MC96F6332D 开发板 4.USB-OCD II仿真器 二.代码部分 1.现代单片机MC96F ...
- 基础计算机知识代码,计算机基础知识(示例代码)
计算机的基本组成:硬件.操作系统.软件.网络四部分组成. 为何要学习计算机基础:Python跟其他语言一样也是一门编程语言,即python是语言.学习python语言之所以要求掌握计算机基础只是因为p ...
- java入门基础知识示例代码
本次更新给大家带来java的入门基础知识相关学习代码 模块一:java程序里的数据书写格式 package com.jiawei.literal;public class LiteralDemo {p ...
- 计算机硬件及相关设备基础知识,计算机硬件——基础知识(示例代码)
计算机硬件--基础知识 1.编程语言的作用 语言是用来沟通的,如英语.法语.葡萄牙语等.程序员编程的本质就是让计算机去工作,而编程语言就是程序员与计算机沟通的介质. 2.操作系统和硬件的关系 操作系统 ...
- 计算机网络基础代码,计算机网络基础知识(示例代码)
http://blog.csdn.net/goodboy1881/article/category/204448(乱入一下,关于tcp/ip这个网址总结的特别好) 1.网络层提供两种服务 一种是虚电路 ...
最新文章
- eclipse左侧框不见了怎么办
- 大数据技术-hive窗口函数详解
- Ubuntu 16.04 下安装VMware Tools(三行命令搞定,亲测好使)
- 前端学习(1858)vue之电商管理系统电商系统之分析登录页面的布局结构
- 乐视赚钱的时候,贾跃亭特别喜欢找明星入股
- flink API之 Environment
- java注册表添加键值_Java通过CMD方式读取注册表任意键值对
- 《中国各省名由来》 2010年11月03日
- iOS客户端安装包大小优化
- 值得收藏:一份非常完整的MySQL规范
- Unity UGUI屏幕自适应
- 2021年安全员-B证考试题及安全员-B证报名考试
- 个人版的一键GHOST工具V1.0 BY何定坤
- ECU存储安全之深入理解Flash
- 四年大学,说毕业就毕业了
- 苹果研发柔性玻璃,iOS升级证件识别
- date获取时间某年某月一共有多少天以及格式化天数,月份,年
- 2023北京林业大学计算机考研信息汇总
- 2021姜山中学高考成绩查询,2021年宁波高考各高中成绩及本科升学率数据排名及分析...
- 罗斯蒙特3051酸碱盐浓度变送器产品简介及原理
热门文章
- RAID之全程图解 手把手教你做RAID磁盘阵列(硬RAID)
- 陶国荣著JQuery权威指南PDF
- Android 源码编译问题集锦
- ImageMagick利用蒙版合成图片
- 华翼宽带android客户端,实地测试 看华翼宽带是否带宽缩水_网络设备评测-中关村在线...
- asinh() 函数
- Leetcode 390.消除游戏
- C语言与JAVA内存管理_深入理解C语言内存管理
- 无人驾驶虚拟仿真(十三)--图像处理之交通标志牌识别1
- [强烈推荐]ORACLE SQL:经典查询练手第四篇(不懂装懂,永世饭桶!)