#卷18笔记
1.操作系统主要包括以下几个方面的功能: ①进程管理 ②存储管理 ③设备管理 ④文件管理
2.常见的指令寻址有顺序寻址和跳跃寻址。
3.寻找指令中表示的操作数或怎样计算出操作数的地址称为数据寻址。常见的数据存执有隐含寻址、立即(数)寻址、直接寻址、间接寻址、寄存器寻址etc
4.计算机操作系统有四个特征:并发、共享、异步、虚拟。
5.正整数的原码、反码和补码是一样的。
6.在二进制中,通常负数采用补码的形式表示。
原码转换为反码:符号位不变,数值位分别'按位取反'
原码转换为补码:符号位不变,数值位按位取反,末位再加1。
7.虚拟存储器的空间大小取决于计算机的访存能力。
8.c语言对于书写格式无固定要求,它允许一-行写几个语句,也允许一个语句拆开写在多行上,用C语言编写程序可以存储为多个程序文件
9.C语言规定,不管格式符的个数与输出变量的个数是否相等,则均按格式符的个数输出,如果格式符的个数小于输出变量的个数,则按自左至右的顺序,多余的变量值不输出,若格式符的个数大于输出变量的个数,则多余格式符则由程序自动输出任意值
10.定义一个结构体类型的变量:
(1)先声明结构体类型再定义变量名: struct结构体名 {成员表列}; 类型名 成员名
(2)在声明类型的同时定义变量: struct结构体名 {成员表列 }变量名表列;
(3)直接定义结构类型变量,即不出现结构体名: struct {成员表列 }变量名表列
11.getchar ()函数的作用是从终端输入一个字符,而不是从磁盘读入字符
12.int (*f) (int)定义f是一个指向函数的指针变量,此函数带回整型的返回值,同时该函数还具有一个整型的形参。
13. extern定义外部变量、static静态变量属于静态存储,在整个程序运行时间都存在。
aut自动变量、register寄存器变量属于动态存储,调用时临时分配单元
14.。"按位异或"运算的规则是参与运算的两个相应位同号,则结果为0,不同则为1。
"<<"是C语言中规定的左移运算符,左移位相当于该数乘以2。
"|"和"&"分别是按位或和按位与运算符。
15.A——Z的ASCII码是65到90,a——z的ASCII码是97到122,且大小写字母的ASCII码间相差32
列表的方法【】
1.append向列表的最后添加一个元素
2.insert(插入的位置,插入的元素)
3.extend(序列)把序列里的所有元素 都增加到列表的末端
4.pop()根据索引删除并返回被删除 的元素
5.remove( )根据指定元素删除,若有多个,删除第一个
6.clear()清空序列
7.reverse()反转序列
8.sort()默认升序排列
9.sort(reverse=true)默认降序排列
遍历
for (可以遍历字符串)
while
range()函数
1.range函数可以用于生成自然数的序列
2.该函数可以省略起始位置和步长,结束位置不可省。
3.通过range函数可以创建一个执行指定次数的for循环
for i in range(30):
元组.解包
1.当元组不是空元组时,括号可省略,(元组=不可变序列=不可变的列表)
2.运用解包可以将元组当中每一个元素都赋值给一个变量
eg:my-(下划线)tuple=10,20,30,40
a,b,c,d=my-tuple
即a=10,b=20一一对应
3.运用解包可以交互变量的值
eg a,b=b,a
4.对元组解包时,变量的数量必须和元组的元素数量一致。可以在变量前添加一个*,则可以获得剩下的所有元素(不能同时出现两个或两个以上*)
字典(key:value){}
1.每一个键值对我们称其为item
2.字典的键不能重复,若重复后边的替代前边的。且键必须是不可变对象,值是任意对象
3.可以把包含双值子序列的序列转换成字典
4.dict([ ( , ) ,( , ) ])
5.len()获取字典中键值对的个数
6.in not in是否包含指定的键,通过【】获取值时,如果没有此键会报错
7.get(key【,default】)用于根据键获取字典中的值。不同于d【‘name’】,当字典中没有该对应的键,会输出None,而不会报错
eg: print (d.get(‘name’))
(1)修改字典
1.若字典中有对应的key,则d【key】=value用于修改覆盖,若字典中没有,则往字典中添加键值对
2.setdefalut(key【,defalut】)可以向字典中添加key-value
eg:d.setdefalut(‘name’,‘猪八戒’)
如果key已经存在,则返回原有的key,对字典不做任何操作
如果key不存在,则向字典添加key-value
(2)字典与字典连接
1.d1.update(d2)
若d2和d1有相同的key,d2dkey覆盖d1
(3)删除key-value
1.d.popitem()随机删除一对键值对,一般删除最后一个,返回值是一个元组,包含键和值
2.pop(key【,defalut】)根据key删除键值对,如果删除了不存在的key会报错
3.若指定了默认值再删除不存在的key,不会报错,会返回默认值
eg:result=d.pop(‘name’,'这是默认值‘)
4.del d【】
5.d.clear()
6.d.copy()对字典进行浅复制(对对象内部的对象不会复制),复制以后的对象和原对象独立,互不影响
浅复制:如果字典内还有字典,浅复制之后,对字典内部那个字典进行修改,则复制前后的字典均会发生改变
字典的遍历
1.遍历字典:keys(),values(),items()
2.通过遍历keys()来获取所有的键,值,键值对
for k in d.keys():
print(k);
print(d【k】);
print(k,d【k】);
3.通过遍历values()获取所有的值
for i in d.values():
4.items()返回字典中所有的项,返回一个序列,序列中包含双值子序列,分别是key和value
print(d.items())
for k,v in d.items():
print(k,‘=’,v)
集合{}
1.集合不可重复,不可变
2.set()可以把集合和字典转换成集合,字典用set()只会返回键
3.集合不可以用索引,若想索引,则先把集合转换成列表
list(列表名)【索引位置】
4.in not in检查集合元素
5.len()获取集合中的元素个数
6.add()向集合增加元素
7.update()
8.pop()随机删除集合并返回的一个元素
9.remove()删除指定元素
10.clear()清楚集合
集合的运算
1.&交集运算
2.|并集运算
3.-差集运算
4.^异或集运算
5.<=检查一个集合是否是另一个集合的子集(两个集合一样也是子集)
6.<检查一个集合是否是另一个集合的真子集