代号3 发表于 2018-4-16 18:37:28

速成班c学习笔记 一周学完c系列第一天笔记 第一天

本帖最后由 代号3 于 2018-4-30 15:07 编辑


之前开的帖子 鉴于查看体验太差 重新开贴记录,一帖一天的形式 一周学完夸张了 但进程足够快是肯定的

认识计算机
引言
        电与电信号
1·系统组成
        进制运算
        逻辑与逻辑电路 布尔逻辑 ×——与+——或   !——非
        x-y 并且电路 x+y 或者电路 非电路 ?电流对磁性的影响 -无影响 高热消磁
        复合表达式
2·计算机硬件
        指令就是有含义的数字?信号
        存储器 输入输出设备 cpu中央处理器
        计算机是一种能够按照事先储存的程序,自动,高速的对数据进行输入,处理,输出和存储的系统
        输入输出设备 运算器 控制器 存储器 五部分 冯诺依曼体系
        只读存储器 ROM(主板程序 只能外读不能随意写入 断电不损数据) 随机存储器 RAM(断电数据不存储 内存条)
        cpu:运算器 控制器
        外存储器:硬盘 软盘 光盘
3·程序与程序语言
        程序:一组计算机能识别和执行的指令
        机器指令
                计算机提供最原始工具系统
                目标程序 计算机可以直接执行 机器语言程序
                不同机器 指令系统不同
        汇编语言
                英文字母+符号 表示指令操作码,寄存器,数据和存储地址等,在程序中代替二进制编码数。
                大多数 一条汇编指令对应一条机器指令,少数对应几条机器指令
                缺点:抽象层次低,针对某一种机器编写,可移植性性差
                助记符量大 难记
       
        高级语言
                高度屏蔽机器指令
                提高了语言的抽象性
                语法和结构更近似人类交流语言 减少助记符采用关键字
                远离对硬件的直接操作,容易普及
        高级语言分类
                编译型语言:C,C++ 有编译器
                                        高级语言→目标语言(机器语言)
                                        修改先修改源代码
                                        编译慢 运行快
                解释型语言:python,java
                                        不产生目标机器代码
                                        产生易于执行的中间代码
                解释器:中间代码执行时,由“编译器”把中间代码翻译成二进制代码,运行效率低
                解释器即各大语言的虚拟机,解释型语言写的程序都是跨平台的,平台安装虚拟环境即可。跨平台性好

        代码跨平台
                机器语言,汇编语言与特定cpu挂钩
                标准c语言,不用太大修改在不同平台都可以编译
        程序跨平台 编译完的程序是否和平台相关
                解释型语言一般跨平台性比编译型语言好





计算机中的数据
       
        进制
                二进制 0,1 表示符号“B” 每一位都是2的整数次幂
                1.2.4.8. 16.32.64.128. 256.512.1024.2048. 4096.8192
               
                八进制 0-7表示符号“0.”
                1.8.64.512.4096

                十进制 0-9 逢十进一 每一位都是10的整数次幂 表示符号 “D”

                十六进制 0-9 A-F 表示符号“H” 16的整数次幂
                1.16.256.4096
        进制转换
                十进制→二进制
                整数部分:逆向取余 辗转除二取余 逆向读
                小数部分:正向去整 乘二凑整 正向读

                二进制→八进制
                整数部分 低位向高位每三位用一个等值的八进制数来替换
        不足三位时在高位补0凑满3位
                小数部分 三位替换 低位补〇凑满三位

                二进制→十六进制
                四位一组 整数高位凑0 小数低位补0

                八进制→十六进制
                八→二→十六
               
               
               原码反码补码       
                原码 第一位表示符号 其余位表示值1负0正

                反码 负数的原码基础上 符号位不变 其余位取反 正数反码即自身
        反码表示负数时先转换为原码再计算

                补码
                     负数的补码是在原码基础上,符号位不变,其余各位去反,最后加一
                       
                       
               正数 三码合一
               负数
                        原码:最高位不变,后面数据和其绝对值相同
                        反码:原码除最高位,其余取反
                        补码:反码加一
              计算机内都是补码存储 加法运算               
       
页: [1]
查看完整版本: 速成班c学习笔记 一周学完c系列第一天笔记 第一天