首页 > 其他分享 >自我介绍&学习笔记

自我介绍&学习笔记

时间:2023-02-08 21:00:22浏览次数:62  
标签:笔记 学习 指令 寄存器 gate 自我介绍 true CPU

这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzzcxy/2023learning
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzzcxy/2023learning/homework/12898
这个作业的目标 自我介绍&学习笔记&学习感想

自我介绍

个人信息

我是2022级数字媒体技术1班林思含,广东人,转专业前在环境工程专业就读。

上学期的学习情况?有关计算机知识的学习?

就跟我从未考虑过环境工程这个专业,从得知专业那刻便确定申请转专业一样;我也从未想过自己会来到计算机学院————此前我了解的计算机知识可谓少之又少,兴趣方向也和计算机相差甚远。大一上学期学习的Python,是我第一次系统学习编程相关的软件。学习的认真程度一般,成绩自然也只算过得去。这一个学期我一直保持着有些迷茫的状态,按部就班地上课,空闲时间去图书馆自习,既算在不断自我督促,但实际上学习节奏很混乱,对于时间的利用并不清晰;而这个状态,则使我学习效率远达不到我适应大学学习的需求。有“转专业”、“提升成绩”的目标,但没有落到实处、细处清楚明白的计划,令我在大学生活中找不准自己的定位。 数天前导员ppt上“欢迎来到计算机系”带给我的震撼,到现在还令我恍惚(我从未设想过自己会来到这个学院,也未想过自己会学习编程类的技术)——身份定位的突然确定,一时让我怔异,然后心底知晓的,就是要学好接下来,这个专业的知识、技术。

性格?兴趣爱好?行事风格?

我不是个很外向的人,但绝不是沉默寡言。熟悉前显得有些冷淡,但交往些时便会发现我的话唠属性。在很多方面有兴趣,属于广却不深。平时会玩点音游,阅读、音乐,偶尔写东西,随意地拍拍照片。天空、河湖、建筑物,权当记录。 
喜欢记录,也喜欢计划、规划,习惯尽可能地列出想做和要做的事情,清晰每一步工作。对自己要求不低,便会主动寻求细节的完善,思考很多,希望自己的决定可以尽可能规避失误。

接下来想做什么?

大一上学期时,加入了院自律委新媒体运营中心,自然是因为对媒体技术、艺术之类,颇有兴趣;不过以往的好奇并不够让我获得最全面的专业技能和知识,对未来在计院数字媒体技术专业的学习饱含期待,希望能在这里提升自己的专业素养、专业能力,成为真正的“树莓人”。同时对计算机导论这门课程,希望能让我这个计算机小白,更好地了解这些知识,在寒假结束前,为接下来的专业学习打好基础。 因为转专业,我对这个寒假实际有许多想做且必须做的事情,除去学校安排的计算机导论课程的学习(我很惊喜学校的决定,这可以让我们更好地跟上新专业的学习进程),在剩余的寒假时间内我还在尝试更专业、系统地学习Photoshop(此前只属于会用,但并不算熟练且擅长),初步了解C语言和更多的关于计算机的知识,同时继续保持英语单词的记忆和复习以备四级的考核。至于回到学校开启新的一学期,我想更快地了解专业,更多地参与到专业相关的学习、工作和活动中;学习和尝试专业不同方向的技能,并从中找出自己最擅长、最有兴趣和优势的类型,作为明确的奋斗方向;丰富自己,多多利用学校图书馆的丰富资源,也要走出校园,接收更多的信息。一切的前提,也是我最想做到的,就是提高自己的学习效率。

为什么转入计算机专业?就业?

作为物理生却擅长文科学科、对文科富有兴趣的我,因为想学与视觉艺术、传媒设计关系较为密切的专业,从而想要来到技术与艺术相融合的数字媒体技术专业;又因为数字媒体技术专业属于计算机专业,所以我便来到了这里。所属专业在何处并不是我所主要关注的,专业所教授的技术和知识才是吸引我的关键。 数字媒体技术虽技艺相结,但更加重视“技术”的实践和应用。我希望我能掌握好技术方面的技能,并且发挥兴趣方向上对艺术方面的提升,学精学优。从数字媒体技术现有的主流就业方向上看,我对未来就业的想法会更倾向建模、动画制作这类。

学习笔记

电子计算机

第一代机电计算机由继电器组成
热电子管 热电子发射 二极管 三级真空管 晶体管 gate门

布尔逻辑与逻辑门gate

二进制 1 and 0 true and false

布尔代数

and

and gate 串联两个晶体管,必须两个晶体管都通电,即都表现为true

or

or gate 并联两个晶体管,且两个晶体管都有输入端

not

真值表 not gate 晶体管output端一端接地,当输入为false时,接地端不接地,output电流通过表现为true

not gate 三角形前面一个圆点
and gate D形状
or gate 鱼状

xor

一个and gate串联一个not gate 并联一个or gate 串联一个and gate 两者相异为true,反之为false if input true and true

  • 通过and gate get true
    ++ 通过not gate get false
    +++ true and true 通过or gate gat true
    ++++ false and true通过and gate get false

xor gate 鱼形左侧加曲线

二进制

1为true 0为flase

单位

bit 最小单位“位” 8bits = 1bytes 8位 = 1字节
1 KB = 1000 B = 8000 bits 1千字节 = 1000字节(二进制内,1KB = 1024 B)

正负

1表示- 0表示+
位址 浮点数
ASCII 8位 Unicode 16位

数制

用一组固定的数字和一套统一的规则来表示数目的方法

基数 R 位权 RN

16进制基数 1—9 and A—F(10—15)
H代表16进制 R进制 R,Rn-1,Rn-2,……R1,R0,R-1,R-2,……

数制转换

进制数转换为进制数 按权展开求和
进制数转换为进制数 除以2取余直到商为0,从下往上读数,小数部分乘二取整,从前向后读数
进制和进制的转换 二到八,3位归并;反之1位分3位
进制和十六进制的转换 二到十六,4位归并;反之1位分4位

数字的储存

符号位 1 0
反码 正数相同,负数数值部分取反
补码 正数相同,负数反码+1
整数在计算机中以补码形式存储

算术逻辑单元ALU

表示存储是计算机的重要功能
ALU提供计算功能,是负责运算的组件
ALU有2个单元,1个算术单元和1个逻辑单元

算术单元

负责计算机里的数字操作 输入A、B,输出都是单个bit(0或1) 注:1为true,0为flase

半加器 Half adder

XOR gate和AND gate并联,XOR gate判定两个输入是否需要进位,当输入都为true(1)时,XOR gate输出false(0),AND gate输出true(1)即表示进位

全加器 Full adder

两个或多个半加器连接 提供三个输出A、B、C,A、B先通过半加器相加输出进位,然后C输入到第二个半加器输出进位,两个进位再通过OR gate检查是否为true(即两个进位中是否有一位为1)(因为三个输入最大为1+1+1,进位仅存在一位为true)(若OR gate检查为flase,则两个进位均为0,输出为false) 8位行波进位加法器 由一个半加器和七个全加器组成

  • 如果第9位(最后一个全加器)有进位(输出),则代表2个数字的和太大了,超过了8位,称为溢出
    现代计算机“超前进位加法器”

逻辑单元

逻辑单元执行逻辑操作ALU 箭符ALU有不同的标志(flag),常用标志:

  • 溢出标志

  • 零测试标志(测试数字是否相同

  • 负标志

寄存器&内存

RAM 随机存取存储器,只在有电状态下存储
持久存储

回向电路

AND-OR 锁存器 设置输入复位输入两个输入分别通过or gatenot gate输入and gate,在and gate输出处设置回流电路返回通过设置输入的or gate (当设置输入1,复为输入0时,输出和回流都为1,电路持续保持输出为1实现锁存) 放入数据为写入 拿出数据为读取 通过改变允许写入线的值来控制门锁,从而实现存储内容的修改保存

寄存器

寄存器能存储一个数字,数字的位数为位宽
写入寄存器需要启动里面的所有锁存器
矩阵当行列线都为1,单独启动一个指定的寄存器
地址用二进制表示位置,如12行8列为11001000
多路复用器将地址转换为行列,通过多个多路复用器分别处理行列

内存

多个寄存器组成内存
RAM 随机存取储存器

  • SRAM 静态随机存取存储器

  • 闪存 在EEPROM基础上发明的E电、EP可擦除可编程的ROM

  • NVRAM 只读储存器,基本元件是浮栅晶体管

中央处理器(CPU)

计算机的心脏 中央处理单元,简称CPU
CPU负责执行任务,程序由一个个指令组成,指令指示计算机要做什么
微体系架构抽象多组件的连接的高层次视角
数据以二进制值存在内存中

CPU

CPU可编程,是一块硬件,可被软件控制
CPU由寄存器、时钟组成,其中寄存器用来临时存数据和操作数据,CPU和RAM通过地址线数据线允许读/写线进行通信
将CPU支持的所有指令分配对应的ID,设置操作代码(操作码)和代表数据来源的寄存器或内存地址

  • 指令地址寄存器 追踪程序运行进度,存当前指令的内存地址
  • 指令寄存器当启动计算机时,所有寄存器从0开始,运行程序中,CPU的第一个阶段叫取指令阶段,负责拿到指令;
    1. 取指令阶段,将指令地址寄存器连接到RAM,寄存器值为0,RAM返回地址0的值,复制指令到指令寄存器
    2. 解码阶段,解读指令提取操作码和寄存器或内存地址,再由控制单元(由逻辑门组成,识别操作码)解码
    3. 执行阶段,根据指示打开RAM的允许读取线进行操作,通过RMA连接的对应的寄存器(行列线皆打开)进行存储,完成指令后关闭所有线路,把指令地址寄存器+1,实现执行阶段时钟以精准的间隔触发电信号,控制单元利用电信号,推进CPU的内部操作,CPU“取指令——解码——执行”的速度称为时钟速度,单位为赫兹(Hz,表示频率)动态调整频率 超频、降频

指令和程序

ADD指令前后顺序很重要,结果会存储在最后一个寄存器
指令执行需通过ALU判断标志是否为True才能执行 指令和数据都是存在同一个内存里,都用二进制数表示
HALT能区分指令和数据 地址中代表操作码的位数为指令长度,增加指令类型有两种方法
+增长指令长度 32位、64位
+可变指令长度 特别指令有不同的解码读取操作码,指令可以是任意长度如JUMP需要读取位置值,位置值位置在JUMP后面,称为立即值

高级CPU设计

早期计算机的提速方式是减少晶体管的切换时间
现代CPU直接在硬件层面设计了除法可以直接给ALU除法指令;现代处理器有专门电路来处理图形操作、解码压缩视频、加密文档等

缓存

缓存 解决传输处理延迟的方法,给CPU加RAM,CPU从RAM拿数据时RAM可以批量传输,也可当临时空间存储中间值,适合长/复杂的运算
缓存命中为想要的数据已经在缓存,反之为缓存未命中
脏位 缓存内每块空间有一个特殊标记,当反向缓存传输回RAM时,用于记录缓存与原RAM不一致的内容,以便同步

指令流水线

并行处理
+指令之间的依赖关系 动态排序 乱序执行
+条件转换 推测执行 分支预测 超标量处理器

多核处理器

多个计算单元 超级计算机

早期编程方式

插线板 存储程序计算机 冯诺依曼结构处理器(有算术逻辑单元)、数据寄存器、指令寄存器、指令地址寄存器、内存(存数据和指令)
面板编程

编程语言

机器语言、机器码(早期)
伪代码(对程序的高层次描述)
助记符(后紧跟数据)
汇编器(读取汇编语言转成机器码)
算术语言版本0(A—0)
变量
公式翻译Fortran
数据系统语言委员会
普通面向商业语言Cobol ALGOL,LISP,BASIC,Pascal,C,Smalltalk,C++,Objective-C,Perl,Python,Ruby,Java,Swift,C#,Go

编程原理

语句、语法
赋值语句、控制流语句(if语句)/条件语句、循环语句
条件循环(while循环、for循环)
函数(方法/子程序)
函数

算法入门

算法 解决问题的具体步骤
排序 选择排序、归并排序

  • 数组(列表/向量)
    O(n2) 算法的复杂度,算法的输入大小运行步骤之间的关系,表示运行速度的量级O(n* log n)
    归并排序的算法复杂度,n为比较+合并的次数,和数组大小成正比;log n为合并步骤的次数,和数量成对数关系

数据结构

下标 【】表示访问数组
字符串 矩阵
结构体 多个变量打包在一起

  • 节点 存有一个变量和一个指针(特殊变量,指向一个内存地址),用节点可以做链表
  • 链表 一种灵活数据结构,能存储很多个节点,链表的灵活性是通过每个节点指向下一个节点实现的
  • 循环列表/非循环列表,null代表链表尽头队列
    先进先出FIFO
    后进先出LIFO,入栈出栈
    最高节点为根节点根节点下的所有节点为子节点,任何子节点的直属上层节点为母节点
    红黑树

图灵

可判定性问题 图灵机 图灵完备 停机问题
丘奇-图灵论题
图灵测试

软件工程

面向对象编程 打包函数成层级,将相关代码集中打包为对象来减少代码;核心是隐藏复杂度,选择性的公布功能(C++、C#、Objective-C)
程序编程接口(API) 帮助不同程序员合作
文档 帮忙理解代码;一般放在README文件里;也可直接写成注释放在源代码内
集成开发环境(IDE) 帮助开发者整理和看代码,很多还可以直接编译和运行代码、定位出错代码、提供信息(调试)
源代码管理(版本控制) 可跟踪所有代码变化,回滚到原始稳定版;同时记录了修改者
代码仓库
质量保证测试(QA) 测试软件,模拟各种情况寻找bug
bate版 未完全测试版本

学习感想

作为一个对计算机了解甚微的小白,通过这段时间学习快速了解到不少的、以往深觉难懂和不解的计算机知识,对我帮助非常之大。学习过程中也有过不少反复及暂停,以让我得以捋清思路,转化、理解所学。
虽然弹幕中有不少无关话题,但我并无关闭弹幕,因为在一些特殊名词或难以理解的段落出现时,弹幕常常会有其他观看者的补充和解读,可以非常及时且明确地帮助我进行理解。
至于typora的使用,由于typora的收费,我使用了**Typedown**,虽然功能不比typora完善,但界面一样简洁且操作简便,可作为替代使用。

标签:笔记,学习,指令,寄存器,gate,自我介绍,true,CPU
From: https://www.cnblogs.com/soraderancy/p/17103272.html

相关文章

  • 第三天笔记
    第三天笔记程序控制语句条件控制语句(根据不同的条件进入不同的代码块)循环控制语句(根据循环条件进行多次循环)循环控制语句流程定义初始值设置迭代条件......
  • API对象--Ingress(chrono《kubernetes入门实战课》笔记整理)
    【概念说明】Service的功能和运行机制,主要由kube-proxy控制的四层负载均衡,即根据IP、PORT来做负载均衡。而很多应用都是在7层做均衡更为合理,比如根据主机名、URI、请求......
  • Kaggle 比赛分类与学习资源整理
    1、竞赛Kaggle竞赛主要分成以下几个类别。1、入门比赛GettingStarted入门比赛GettingStarted给萌新们一个试水的机会,没有奖金,但有非常多的前辈经验可供学习。很久......
  • 自我介绍与学习记录
    这个作业属于哪个课程https://edu.cnblogs.com/campus/fzzcxy/2023learning这个作业要求在哪里https://edu.cnblogs.com/campus/fzzcxy/2023learning/homework/1......
  • 自我介绍与学习记录
    自我介绍与学习记录这个作业属于哪个课程https://edu.cnblogs.com/campus/fzzcxy/2023learning?filter=homework这个作业要求在哪里https://edu.cnblogs.com/ca......
  • 《分布式技术原理与算法解析》学习笔记Day05
    分布式共识什么是分布式共识?分布式共识就是在多个节点均可独自操作或记录的情况下,使得所有节点针对某个状态达成一致的过程。有哪些常见的分布式共识算法?一般有3种分布......
  • MongoDB 笔记
    title:MongoDB笔记date:2023-02-0311:13:35tags:-MongoDB1、MongoDB相关概念库<DataBase>mongodb中的库就类似于传统关系型数据库中库的概念,用来通过不同库......
  • JVM内存学习 2.0
    先说一下结果1.Linux的内存分配是惰性分配的.APP申明了kernel并不会立即进行初始化和使用.2.JVM的内存主要分为,堆区,非堆区,以及jvm使用的其他内存.比如直接内......
  • 小梅哥课程学习——4—16译码器源代码和仿真文件
    //4—16译码器源代码moduledecoder_4_16(a,b,c,d,out);inputa;inputb;inputc;inputd;outputreg[15:0]out;......
  • 小梅哥课程学习——二选一多路选择器源代码和仿真文件
    //二选一多路选择器源代码//此代码注意括号内部运用的是逗号,括号内部最后一个不加逗号。//括号外面的语句都要加分号(;)modulemux2(a,b,sel,out);......