[计算机网络]第二章:物理层
第二章:物理层2.1物理层的基本概念 首先,要强调指出:==物理考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体==。
现在的计算机网络中的硬件设备和传输媒体的种类非常繁多,而通信手段也有许多不同。物理层的作用==就是要尽可能地屏蔽掉这些传输媒体和通信手段的差异,使物理层上面的数据链路层感觉不到这些差异==。
用于物理层的协议也常常称为物理层规程(procedure)。
可以将物理层的主要任务描述为确定与传输媒体的接口有关的一些特性,即:
机械特性:指明接口所用接线器的各种规格。平时常见的各种规格的接插件都有严格的标准化的规定。
电气特性:指明在接口电缆的各条线上出现的电压的范围。
功能特性:指明某条线上出现的某一电平的电压的意义。
过程特性:指明对于不同功能的各种可能事件的出现顺序。
数据在计算机内部多采用并行传输方式。但数据在通信线路(传输媒体)上的传输方式一般都是串行传输(处于经济上的考虑),即逐个比特按照时间顺序传输。
&e ...
[计算机网络]第一章:计算机网络体系框架
第一章:计算机网络体系框架1.1计算机网络的概念 什么是计算机网络?
计算机网络(computer networking)是一个将众多==分散的==、==自治的==计算机系统,通过==通信设备==与==线路==连接起来,由功能完善的==软件==实现==资源共享==和==信息传递==的系统。
计算机网络、互连网、互联网的区别?
计算机网络(简称 网络):由若干==节点(node)==和连接这些结点的==链路(link)==组成。注:结点可以是计算机、集线器、交换机、路由器等。链路可以是有线链路、无线链路。
集线器(Hub):可以把多个节点连接起来,组成一个计算机网络。工作在物理层,会出现数据冲突,现已很少使用。
交换机(Switch):可以把多个节点连接起来,组成一个计算机网络。工作在数据链路层,不会发生数据冲突。
路由器(router):可以把==两个或多个计算机网络互相连接起来==,形成规模更大的计算机网络,也可称为==”互连网“==。工作在网络层。
Tips:计算机网络课程中的”路由 ...
[深入理解计算机系统]CSAPP 第四章学习笔记
[深入理解计算机系统]CSAPP 第四章学习笔记 本人仍处于学习中,若有错误,恳请谅解。这里推荐一个B站宝藏UP主——九曲阑干,看他的视频给了我许多帮助,也希望可以帮助到你。
前言指令集体系结构是什么 处理器必须执行一系列指令,每条指令执行某个简单操作,如两个数相加。每一条指令会被编码为由一个或多个字节序列组成的二进制格式,即能被处理器识别的机器码。
一个处理器支持的指令和指令的字节级编码称为它的指令集体系结构——ISA,也就是指令集架构、指令系统结构。
指令集体系结构的作用 指令集体系结构(ISA)是计算机软件和硬件交互的接口。
ISA 在编译器编写者(CPU软件)和处理器设计人员(CPU硬件)之间提供了一个概念抽象层,编译器编写者只需要知道允许那些指令,以及它们是如何编码的(即依据ISA了解CPU选用的指令集,明白可以使用那些指令,同时要遵循哪些规范);而处理器设计者必须建造出执行这些指令的处理器(依据ISA来设计处理器)。
ISA最重要的内涵就 ...
[Android]Jetpack Compose 实现仿裸眼3D
前言 最近在学传感器的时候,看到了有大佬使用 Jetpack Compose 实现了一个仿裸眼3D的效果,十分的牛皮,看得我是心血来潮、热血澎湃,这里放上推荐链接:Compose版来啦!仿自如裸眼3D效果 - 掘金 (juejin.cn)。于是就也想拥有,所以按照大佬的思路,使用Android 传感器中的陀螺仪来进行一个实现。同时也可以去了解一下 Android 中传感器(Sensor)的使用,这里送上官方传感器文档:传感器 | Android 开发者 | Android Developers (google.cn)。
实现原理 根据上方大佬的思路,我们可以很好地理解的这个仿裸眼3D的原理,简单来说,就是将一张图进行抠图,将其分为前、中、后三个图层(也可以是自己找的三个元素),然后使用 Canvas 里面的 drawImage 函数将三张图画出(使用这个方法加载图片方便进行位移)。
接着对前、后图层使用 translate 函数,通过设置位移量来实现图层的移动,所以只需要通过改变位移量就可以对图片进行位移。这里要注 ...
[Android]Jetpack Compose 实现Banner轮播图
前言 Jetpack Compose 是推荐用于构建原生 Android 界面的新工具包。它可简化并加快 Android 上的界面开发,使用更少的代码、强大的工具和直观的 Kotlin API,快速打造生动而精彩的应用。
本次就使用 Jetpack Compose里面的分页器(pager)来实现一个常用控件——轮播图(Banner)。这里需要对Android Compose有一定的了解,可以先去学习一下Compose的基本知识,这里放上官方直达:直达官方Compose 。
同时这里也放上分页器的官方文档,可以了解更多高级功能,直达:官方分页器文档。
需求分析 首先需要分析一下实现轮播图的功能。
轮播图需要一直循环滑动播放,所以首先就是需要一个具有单页水平滑动效果的控件。在2023年3月底,Google 正式发布Jetpack Compose 的 1.4 版本,在这次的更新中,新增了 pager 等控件,它实现了View中ViewPager类似的功能。因此,水平分页器—— ...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick StartCreate a new post$ hexo new "My New Post"
More info: Writing
Run server$ hexo server
More info: Server
Generate static files$ hexo generate
More info: Generating
Deploy to remote sites$ hexo deploy
More info: Deployment
[深入理解计算机系统]CSAPP DataLab 学习记录
前言: 最近在看完《深入理解计算机系统》前两章之后,也将其第一个Lab——DataLab完成了,于是来对此做一个记录。DataLab主要是对整型和浮点型的实验,其中对条件语句、算数运算还有逻辑运算进行了不同的限制。
实验环境的搭建: 首先由于其实验环境是unix,我使用的是VMware Workstation + Ubuntu来搭建实验环境。VMware虚拟机和Ubuntu的安装可以看这篇博客VMware Ubuntu安装详细过程(详细图解)_vmware安装ubuntu-CSDN博客,具体搭建过程可看这篇博客:【CSAPP】Lab0 - 环境配置_csapp 3e操作环境搭建_Luqwera的博客-CSDN博客。
如果不想安装虚拟机,也可以使用Docker里的Linux容器来搭建,具体的操作过程可看这篇博客超详解 CS:APP:Lab1-DataLab_optional cmd line args-CSDN博客。
完成环境的搭建后便可以开始做DataLab了。
问题描述及解析:1.bitXor ...