读书笔记-《编码:隐匿在计算机软硬件背后的语言》
第1章 至密亲友编码:一种用来在机器和人之间传递信息的方式,编码就是交流。可以通过不同事物的组合表示出特定的信息,最常见的是通过两种事物的组合,如:
手电筒的快闪和慢闪组合
摩尔斯电码的点和划组合
第2章 编码与组合通过点和划组合而成的摩尔斯电码表:这样就可以表示不同的字母,达到信息传递的作用。摩尔斯码又称作二进制码,因为其组合方式
从零开始搭建个人博客或网站
从零开始搭建个人博客或网站一、安装git和node环境1、下载版本管理工具git(官网下载地址https://git-scm.com/download/),安装时直接点击下一步,根据默认勾选进行安装即可。
2、安装完 Git 后还需要进行全局配置。Git中必须配置全局用户名和邮箱后才能用。鼠标右击,选择Git Bash Here,输入下面两条命令(其中name填你的用户名,email填你的邮箱):12$ git config --global user.name "name"$ git config --global user.email "email@example.com"3、下载nodejs(官网下载地址https://nodejs.org/en/),下载LTS版本即可(长期支持版),默认点击下一步安装即可。
4、打开cmd或powershell命令终端,分别输入git —version和node —version检查下是否安装成功,如果显示版本信息则说明安装成功。最后再查看下 npm 包管理器的版本(npm是随NodeJS一起安装的包 ...
搭建个人免费稳定图床GitHub+jsDelivr+PicGo+Typora
搭建个人免费稳定图床GitHub+jsDelivr+PicGo+Typora
搭建完个人博客以后,写文章的时候就不可避免需要插入图片,于是就需要使用图床工具把本地图片转换成网络图片再把图片链接分享出来。市面上的图床工具非常多,但很多都需要收费,有些免费的也存在着不稳定的风险。现在有一种基于GitHub和jsDelivr加速的免费图床。PicGo是一个用于快速上传图片并获取图片 URL 链接的工具,支持多个图床进行使用,其中当然包括我们现在使用的GitHub图床了,它同时支持Windows、macOS、Linux平台。GitHub和jsDelivr都是大厂,不用担心跑路问题,也不用担心速度和容量问题,而且完全开源免费,再结合Typora编辑器,书写markdown格式文章,简直效率神器,快来根据下面教程搭建个人的免费稳定图床吧!
一、新建GitHub图床仓库
登录GitHub账户,没有的话就注册下,然后新建GitHub仓库。
2、填写仓库名【CDN1】,勾选上【Public】和【Add a README file】,最后点击创建。
3、创建GitHub中的Token(令牌)
点击 ...
龙芯服务器重装UOS系统+搭建本地仓库源
龙芯服务器重装UOS系统+搭建本地仓库源一、安装mips64el架构UOS系统1、进入统信UOS官网—> 生态社区—>资源中心—>镜像下载页面,选择服务器版,下载MIPS64镜像(直达网址:https://www.chinauos.com/resource/download-server)。
2、通过UltraISO软件将下载的ISO刻录到U盘里,制作一个U盘启动盘。
3、修改龙芯服务器BIOS启动项,把U盘启动改成第一启动项就进入了系统安装环境,大约要等半小时才能安装成功。
二、配置本地仓库源如何使用统信UOS镜像搭建本地源?(直达网址:https://www.xtuos.com/817.html)
1、将对应版本的server iso镜像挂在到/mnt目录下
sudo mount uniontechos-server-20-1040d-mips64el.iso /mnt
2、修改源地址。
123sudo vim /etc/apt/source.listdeb [trusted=yes] file:///mnt eagle main
(我这里根据镜像信息,把eag ...
份子钱清单
b74c372b77015f4e57de3c2b37100bc1e73ca956030c5d616d6a12bd7040994f1f5bbd0d6759e4ed4b1c806369c5969d327939ba6ee889289292206ecdedb2a44a151fb69104de75578889d03c3c2e262f261c3053dd407008b65404400c3c32725e0eaa9c2a17a96a477edfa9e01d0c0e35810b3fbd0d01c2f9637b0a4c14dd39bdbc471e7ec1a9a54b5a345065d38761f61753141bd7abe3ca82a17c8f636eb99522e8a8304e9d97deed106d289e87d44f206f1892da53b9b61f6acc9ecfaf5e3bea26130f13047c114fd7dfddb855da5102a54244aa4615bda50107e1b5699726c53e2ee168504a10e3669f9e522a8277651a49a00b405 ...
RPM介绍
RPM 命令一、RPM 介绍
1.什么是 rpm ?
rpm 即 RedHat Package Management,是 RedHat 的发明之一
2.为什么需要 rpm ?
在一个操作系统下,需要安装实现各种功能的软件包。这些软件包一般都有各自的程序,但是同时也有错综复杂的依赖关系。同时还需要 解决软件包的版本,以及安装,配置,卸载的自动化问题。为了解决 这些问题,RedHat 针对自己的系统提出了一个较好的办法来管理成千 上百的软件。这就是 RPM 管理系统。在系统中安装了 rpm 管理系统以后,只要是符合 rpm 文件标准的打包程序都可以方便地安装、升级、卸载。
3.是不是所有的 linux 都使用 rpm ?
任何系统都需要包管理系统,因此很多 linux 都使用 rpm 系统。 rpm 系统是 Redhat Linux 和Fedora Core 的软件包管理器,但是 Mandriva、SuSE 等 Linux 发行版也都使用 rpm。由于 rpm的源程序可以在别的系统上进行编译,所以有可能在别的系统上也使用 rpm。除了 rpm,其他一些系统也有自己的软件包管理程序, 例如 ...
吉他谱
朴树
平凡之路
NewBoy
许巍
漫步前奏
版本1:
Your browser does not support the video tag.
版本2:
Your browser does not support the video tag.
漫步
李志
下雨
这个世界会好吗
天空之城
梵高先生
和你在一起
山阴路的夏天
关于郑州的记忆
人民不需要自由
宋冬野
安河桥
斑马斑马
莉莉安
董小姐
鸽子
年年
六层楼
关忆北
连衣裙
卡比巴拉得海
贰佰
玫瑰
嘿抬头
狗日的青春
我在太原和谁一起假装悲伤
赵照
当你老了
逃跑计划
夜空中最亮的星
陈奕迅
不要说话
你的背包
蔡健雅
红色高跟鞋
GitHub入门与实践.pdf
《GitHub入门与实践》
搞懂链接器4:大型项目的构建过程
在讲解大型项目如何被构建之前,我们首先来讨论一个问题,有句话说的很好,梦想总是要有的,万一实现了呢,那么问题来了,要怎么实现呢,这里就涉及到了如何实现目标,
目标是如何实现的
其实很简单,本质上只有两点:
知道最后想要的是什么
为此需要做些什么
有时我们的目标可能不是简单的诸如每天跑五公里之类,比如像通过一门考试,学会一项技能这样的系统性工程。这时我们可能一下子不知道要做些什么,那么这就需要进行任务分解了,即这里的规则就是,把一个大的目标分解为一个个小的目标,如果对于其中一个小的目标还是不够具体,那么就继续将小目标进行分解,直到将每个小目标分解为如每天读懂两个章节,做完十个练习题之类很具体可以马上实施的任务为止。到这时,对于如何实现这个大的目标就很清晰了,只需要严格按照计划去实施就好了。比如对于考研,我们就可以列出如下的计划:
在考研这个例子中我们就按照上述规则将目标进行了分解,每个目标都按如下格式列出:
目标(target): 依赖什么\
要怎么做\
如果“要怎么做”还不是一个具体的目标就继续分解,直到分解为类似进程这样的目标,因为像进程这样的目标已经 ...
搞懂链接器3:重定位
程序的运行过程就是CPU不断的从内存中取出指令然后执行执行的过程,对于函数调用来说比如我们在C/C++语言中调用简单的加法函数add,其对应的汇编指令可能是这样的:
call 0x4004fd
其中0x4004fd即为函数add在内存中的地址,当CPU执行这条语句的时候就会跳转到0x4004fd这个位置开始执行函数add对应的机器指令。
再比如我们在C语言中对一个全局变量g_num不断加一来进行计数,其对应的汇编指令可能是这样的:
mov 0x400fda %eax
add $0x1 %eax
这里的意思是把内存中 0x400fda 这个地址的数据放到寄存器当中,然后将寄存器中的数据加一,在这里g_num这个全局变量的内存地址就是0x400fda。
好奇的同学可能会问,那这些函数以及数据的内存地址是怎么来的呢?
确定程序运行时的内存地址就是接下来我们要讲解的重点内容,这里先给出答案,可执行文件中代码以及数据的运行时内存地址是链接器指定的,也就是上面示例中add的内存地址0x4004fd其是链接器指定的。确定程序运行时地址的过程就是这里重定位(Relocation)。
为什 ...

