二进制编码

2019-2020-1 20175324 《信息安全系统设计基础》第3周学习总结

余生颓废 提交于 2019-12-01 07:24:39
##《信息安全系统设计基础》第3周学习总结 ###一、三种重要的数字表示 + 1.无符号数、有符号数、浮点数 正数的原码、反码以及补码是其本身。 负数的原码是其本身,反码是对原码除符号位之外的各位取反,补码则是反码加1。 + 2.为什么用补码表示 能够统一+0和-0的表示 采用原码表示,+0的二进制表示形式为0 000 0000,而-0的二进制表示形式为1 000 0000; 采用反码表示,+0的二进制表示形式为0 000 0000,而-0的二进制表示形式为1 111 1111; 采用补码表示,+0的二进制表示形式为0 000 0000,而-0的二进制表示形式为1 111 1111+1=1 0000 0000,因为计算机会进行截断,只取低8位,所以-0的补码表示形式为0000 0000。 补码的表示范围比原码和反码表示的范围都要大。用补码能够表示的范围为-128~127,0~127分别用00000000~01111111来表示,而-127~-1则用10000001~11111111来表示,多出的10000000则用来表示-128。 对于有符号整数的运算能够把符号位同数值位为一起处理 如果把符号位单独考虑的话,CPU指令还要特意对最高位进行判断,使计算机的最底层实现变得复杂。 + 3.整数溢出漏洞 参考资料:整数溢出与程序安全 一个整数是一个固定的长度,它能存储的最大值是固定的

老男孩python-day1

非 Y 不嫁゛ 提交于 2019-12-01 07:20:38
import sysimport oscmd = "dir"res = os.popen(cmd) #执行命令print(res.read()) # 读取命令行返回信息print(sys.argv) # 是一个列表,第一个元素是本身路径,后面的元素是传递的命令行参数 # 格式化输出name = 'Alex'print('name is {Name}'.format(Name=name)) # 三元运算a,b,c = 1,2,3d = 5 if a>b else c# 等价于 if a>b: d=5else: d=c print(d)# 字符串和二进制的转换 msg = '我爱北京天安门'# encode,编码,把string转成二进制,decode从二进制转成字符串print(msg.encode(encoding='utf-8').decode(encoding='utf-8')) 来源: https://www.cnblogs.com/wztshine/p/11667815.html

第四章 文件和目录工具

一曲冷凌霜 提交于 2019-12-01 05:07:15
文件工具: 通过内建库函数和标准库来对文件进行操纵; 内建函数open是用来在计算机底层系统下访问文件的工具,它是python的固有部分,被调用返回一个新的与文件相连的对象 通过内建模块os 可以操作较底层的基于描述符的文件,复制,移除,移动和手机文件(os和shutil),借助字典的键将数据和对象存储于文件中(dbm和shelve) 以及访问sql数据库(sqllit第三方插件) python3.x中的文件对象模型 文本文件含有unicode文本(内容始终是一个str字符串----字符构成的序列) 二进制文件包含原有的8位字节码(内容始终是字节字符串----小整数构成的序列) 使用内建文件对象 输出文件: f=open('file','w') 以写方式打开文本文件 f.write('string\n') 写入文件 f.writelines(['str1\n','str2\n']) 写入行字符列表到文件 f.close() 关闭文件 open('file.txt','w').write('str\n') 创建临时文件对象并写入数据,马上被使用不需要保存对象的引用,数据传输完成后问击案对象马上就被回收并在进程中自动关闭 确保文件关闭:异常处理和上下文管理 万能的处理模式: myfile=open('file','w') try: ...process myfile...

QR 码详解(上)

那年仲夏 提交于 2019-12-01 05:04:31
关于二维码,我查了下资料,现在基本都在用日本的 QR 码,PDF417以及汉信码日常基本看不到。原因在于各方面来说,的确是 QR 码最为优秀。所以我准备写一篇介绍 QR 码的文章,如果是写书,可能不方便写得这么详尽,但如果是网上的文章,就可以自由发挥了。写完这篇文章,再抽取部分内容正规化,并整合其它内容形成书的第四章。为方便未来上课讲解方便,以及快速画图,我还做了一个《QR助手程序》,帮助绘制 QR 码中的各部分图形,最后演化成一个二维码绘制程序。本来并未打算要自己写二维码绘制程序的,网上有很多现成的开发包。但一方面为了让自己更熟悉二维码,另一方面,用实现一个简单的二维码绘制程序让学生参考,可以有效降低学生的学习门槛。 QR 码是日本发明的一种二维码,也是目前应用最为广泛的编码。在中国,这种编码几乎无处不在,微信支付、支付宝支付、共享单车、各种广告扫描关注等等。 1. QR 码的特点 1. 存储容量大 传统的条形码只能处理 20 位左右的信息,与此相比,QR 码则可处理几十倍上百倍的信息。另外,QR 码还可以支持所有类型的数据(如:数字、英文字母、日文字母、汉字、二进制、控制码等)。一个 QR 码最多可处理 7089 个数字的巨大信息量。 2. 占用空间小 QR 码使用纵向和横向两个方向处理数据,相同的信息量,QR 码所占空间更小。下图分别是 GS1 编码 `(02

计算机基础

巧了我就是萌 提交于 2019-12-01 04:50:49
来自mooc 北京理工大学--《大学计算机》、西安邮电大学《大学计算机基础》 chapter1 导论 1. 基于计算机 软件 的问题求解方法 有病毒-->查看杀毒软件;磁盘碎片太多了-->磁盘整理软件;启动太慢了-->系统配置实用程序msconfig。 生活中的问题:照片美化,制作一个求职报告,统计学生成绩,软件PS,word,excel。 更加专业的问题:制作鸟巢的三位模型--3dmax 或者maya;求解数学中的正弦拟合--matlab。 有限元计算的软件包 ANSYS。 其他常用软件: 2.基于计算机 程序 的问题求解方法 实例:人构成的中国印 这没有现成的软件可以解决,要用 程序 的方法进行。 3.基于 系统的工程 的问题求解方法 什么是系统?--计算机系统。 实例:天气预报,需要多台计算机完成。密集观测设置--即使数据采集--实时计算处理。 实例:因特网梅森素数大搜索,利用普通计算机的闲置时间来计算。需要多种系统平台支持(硬件、软件、网络、并行等) 基于计算机系统的工程的问题求解方法: (1)陈述问题 (2)问题的输入、输出和接口信息 (3)抽象的解答问题 (4)设计解决方案并且转化为程序 (5)用多种方案和数据测试该答案。 chapter2 计算机信息数字化基础 二进制: (1)0,1表示两种状态,容易实现,与生活实际相符(开、关;真、假) (2)运算规则简单,逢2进1

MySQL配置文件

不想你离开。 提交于 2019-11-30 22:45:43
1 [client] 2 #客户端设置,即客户端默认的连接参数 3 # password = 你的密码 4 port = 3306 5 #默认连接端口 6 socket = /usr/local/mysql/data/mysql.sock 7 #用于本地连接的socket套接字 8 default-character-set = utf8 9 #编码 10 11 [mysqld] 12 #服务端基本设置 13 port = 3306 14 #MySQL监听端口 15 socket = /usr/local/mysql/data/mysql.sock 16 #为MySQL客户端程序和服务器之间的本地通讯指定一个套接字文件 17 pid-file = /usr/local/mysql/data/mysql.pid 18 #pid文件所在目录 19 basedir = /usr/local/mysql 20 #使用该目录作为根目录(安装目录) 21 datadir = /usr/local/mysql/database 22 #数据文件存放的目录 23 tmpdir = /usr/local/mysql/data/tmp 24 #MySQL存放临时文件的目录 25 character_set_server = utf8 26 #服务端默认编码(数据库级别) 27 collation

2019-2020-1学期 20192429 《网络空间安全专业导论》第一周学习总结

我怕爱的太早我们不能终老 提交于 2019-11-30 19:09:20
2019-2020-1学期 20192429 《网络空间安全专业导论》第一周学习总结 第二章 二进制数值与记数系统 2.1 数字与计算 数字:抽象数学系统的一个单位,服从算术法则。 自然数:0或通过在0上重复加1得到的任何数。 负数:小于0的数,是在相应的正数前加上负号得到的数 整数:自然数、自然数的负数或0 有理数:整数或两个整数的商(不包括被0除的情况) 2.2位置记数法 基数:记数系统的基本数值,规定了这个系统中使用的数字量和数位位置的值 基数还决定了数位位置的含义,当给记数系统中的最后一个数加1后,必须执行数位位置左移 位置记数法:数位按顺序排列,每一个数位有一个位置,数字的值是每个数位和位值的乘积之和 0的重要性:0的发现给人类思维无限的潜力,没有其他的人类创新可以给人类智能的发展带来如此深远的影响。 2.2.1 二进制、八进制和十六进制 任何记数系统中的最大数字比基数小1,eg:以10为基数的记数系统具有十个数字(0-9) 2.2.2 其他记数系统中的运算 二进制加法使用 进位 二进制减法使用 借位 2.2.3 以2的幂为基数的记数系统 把二进制数转换成八进制数,从最右边的二进制数位起,每三个数位一组,将每组数字转换成相应的八进制数 表示一位十六进制数需要四位二进制数 2.2.4 把十进制数转换成其他数制的数 •转换十进制数的规则涉及新基数的除法 While(商不是0)

C++位运算符

ぃ、小莉子 提交于 2019-11-30 19:07:11
位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。 C 语言提供的位运算符列表: 运算符 作用 示例 & 按位与 两个操作数同时为1结果为1 | 按位或 两个操作数只要有一个为1,结果就为1 ~ 按位非 操作数为1,结果为0;操作数为0,结果为1 ^ 按位异或 两个操作数相同,结果为0;不相同结果为1 << 左移 右侧空位补0 >> 右移 左侧空位补符号位 1 、“按位与”运算符(&) -- 按位与是指:参加运算的两个数据,按二进制位进行“与”运算。如果两个相应的二进制位都为1,则该位的结果值为1;否则为0。这里的1可以理解为逻辑中的true,0可以理解为逻辑中的false。按位与其实与逻辑上“与”的运算规则一致。逻辑上的“与”,要求运算数全真,结果才为真。若,A=true,B=true,则A∩B= true。 例如: 3&5 3 的二进制编码是11(2)。(为了区分十进制和其他进制,本文规定,凡是非十进制的数据均在数据后面加上括号,括号中注明其进制,二进制则标记为2)内存储存数据的基本单位是字节(Byte),一个字节由8个位(bit)所组成。位是用以描述电脑数据量的最小单位。二进制系统中,每个0或1就是一个位。将11(2

Python系列(二)python变量赋值与运算符

≯℡__Kan透↙ 提交于 2019-11-30 05:54:31
本博文阅读目录: 1、什么是变量? 2、命名规则 3、变量赋值在内存中的原理 4、输入与输出[input raw_input,print] 5、常量 6、常用数据类型[整数,浮点数,布尔值,空值] 7、字符串与字符串格式化[%s,%d,%f,%x ] 8、编码 [ASCII,unicode,UTF-8] 9、注释 [#,’’’] 10、python算术运算符 [+,-,*,/,//,%,**] 11、python比较运算符 [==,!=,<>,>,<,>=,<=] 12、python赋值运算符 [=,+=,-+,*=,/=,%=,**=,//=] 13、python位运算符 [&,|,^,>>,<<] 14、python逻辑运算符 [or,and,not] 15、python成员运算符 [in,not in] 16、python身份运算符 [is,is not] 17、python运算符优先级 正文部分 一、变量赋值 1、什么是变量? 变量就是存储了一个值(就是与变量相关联的信息),代表或引用某个值的一个命名。通常使用“变量=值”的方式给变量赋值。 2、命名规则 变量名只能包括字母、数字和下划线。 变量名可以使用字母或者下划线开头,但不能以数字开头。 变量名不能包含空格,但可以使用下划线来分隔其中的单词。 不能使用关键字作为变量名(即用上面的查询方法可以查询到 哪个是关键字

计算机基础视频学习

血红的双手。 提交于 2019-11-30 03:27:52
计算机: 1、为什么需要计算机?现在每天需要处理的数据量巨大 2、计算机是什么?自动高效完成计算的机器 俗称:电脑 PC 3、计算机特点:1、进行数学和逻辑运算2、可以进行记忆和存储数据3、在程序的指令下自动高效的完成计算 4、计算机组成:大的系统分类:软件系统+硬件系统;硬件:组成计算机的物理设备;软件:安装在计算机上供用户使用的操作指令集合 硬件系统: 1、为什么需要硬件?任何的计算操作,最终都需要通过相应的硬件来完成 2、硬件的组成:依据冯诺依曼理论分成5部分: 输入设备:给计算机输入不同格式的数据 输出设备:将计算机处理后的数据以不同形式展示给用户 控制器+处理器:中央处理器 存储设备:分内存+外存。对数据进行存储 3、内存与外存: 内存:内存条 外存:硬盘 4、内存与外存的比较 1、内存运算速度快 2、数据内存断电消失,外存断电不消失 3、内存分为指定内存(ROM,操作系统底层用的)和随机内存(RAM) 软件系统: 1、为什么需要软件?没有软件,硬件就不知道怎么工作 2、软件系统介绍:分为系统软件+应用软件 系统软件:也叫操作系统软件 操作系统 桌面操作系统:windows(微软公司,用户量大、分很多系列)、MacOs(linux分支)、Linux(核心由李纳斯编写,应用软件少) 移动设备操作软件:android(底层就是小型的linux)、ios 服务器操作系统