《Programming from the Ground Up》学习第4天,p75-p87总结,总计13页。

一、技术总结

1.persistent data

p75, Data which is stored in files is called persistent data, because it persists in files that remain on disk even when the program isn't running.

存储在文件中的数据称为persistent data,因为即使程序每页运行,数据仍保留在磁盘上的文件里。

2.buffer

p76, A buffer is a continuous block of bytes used for bulk data transfer. When you request to read a file, the operating system needs to have a place to store the data it reads. That place is called a buffe.

Another thing to note is that buffers are a fixed size, set by the programmer.

3.equ指令

这是本书有一个不大好的地方,很多指令首次引入的时候缺少定义。例如p80, For example, if you did .equ LINUX_SYSCALL, 0x80, any time after that you wrote LINUX_SYSCALL, the assembler would susbstitue 0x80 for that。

这里作者应该介绍下equ是什么?参考《x64 Assembly Language Step-by-Step: Programming with Linux》p211, A statement contianing the directive EQU is called an equate. An equate is a way of associating a values with a label。这样我们就知道了equ这三个字母来自于equate,这样也方便了初学者记忆。

4.constant(常量)

p88, In programming, a constant is a value that is assigned when a program assembles or compiles, and is never changed.在编程中,constant(常量)是在程序汇编或者程序编译时分配的值,分配后就不再改变。

二、英语总结

1.tedious

(1)tedious < tedium < taedium。

(2)taed-: feelings of being weary of tired。

(3)tedium: u. the quality of being boring for a long time。

(4)tedious: adj. If you describe sth shuch as a job, task, or situation as tedious, you mean it is boring and rather frustrating。词组:be tedious to do sth。

p77, First, it is tedios to type. You would have to type 500 numbers after the .byte declaration, and they wouldn't be used for anything but to take up space.

2.meat

p80, That's a useful trick in writing complex programs-first decide the meat of what is being done.

"meat"用的最多的意思是“u.the flesh of animals(肉)”。这里是一种比喻意义的用法,meat在这里的意思是“n. the core part of sth.”,所以,上没这句话的意思就是“首先决定主要目标这种技巧在编写复杂程序时很有用”。

3.help out/help (someone) out

p80,In this program we will also introduce a new directive, .equ which should help out。

在这句话中,help out把宾语省略了,应该是help us out, 或者help you out,这样更容易理解,即.equ指令会对我们有所帮助。

三、其它

p77,Second, it uses up space in the executable.这句话翻译成中文的意思是“其次,它会用尽可执行文件中的空间”,不是很理解这里为什么使用use up来描述,感觉和use的意思更接近。

四、参考资料

1. 编程

(1)Jonathan Bartlett,《Programming From The Ground Up》:https://book.douban.com/subject/1787855/

2. 英语

(1)Etymology Dictionary:https://www.etymonline.com

(2) Cambridge Dictionary:https://dictionary.cambridge.org



欢迎搜索及关注:编程人(a_codists)

《Programming from the Ground Up》阅读笔记:p75-p87的更多相关文章

  1. Mongodb Manual阅读笔记:CH3 数据模型(Data Models)

    3数据模型(Data Models) Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作Mongodb Manual阅读笔记:CH3 数据模型(Data Models)Mon ...

  2. Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作

    2 Mongodb CRUD 操作 Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作Mongodb Manual阅读笔记:CH3 数据模型(Data Models)Mong ...

  3. faster rcnn源码阅读笔记1

    自己保存的源码阅读笔记哈 faster rcnn 的主要识别过程(粗略) (开始填坑了): 一张3通道,1600*1600图像输入中,经过特征提取网络,得到100*100*512的feature ma ...

  4. Tacotron2论文阅读笔记

    Tacotron2 NATURAL TTS SYNTHESIS BY CONDITIONING WAVENET ON MEL SPECTROGRAM PREDICTIONS论文阅读笔记 先推荐一篇比较 ...

  5. 阅读笔记 1 火球 UML大战需求分析

    伴随着七天国庆的结束,紧张的学习生活也开始了,首先声明,阅读笔记随着我不断地阅读进度会慢慢更新,而不是一次性的写完,所以会重复的编辑.对于我选的这本   <火球 UML大战需求分析>,首先 ...

  6. [阅读笔记]Software optimization resources

    http://www.agner.org/optimize/#manuals 阅读笔记Optimizing software in C++   7. The efficiency of differe ...

  7. 《uml大战需求分析》阅读笔记05

    <uml大战需求分析>阅读笔记05 这次我主要阅读了这本书的第九十章,通过看这章的知识了解了不少的知识开发某系统的重要前提是:这个系统有谁在用?这些人通过这个系统能做什么事? 一般搞清楚这 ...

  8. <<UML大战需求分析>>阅读笔记(2)

    <<UML大战需求分析>>阅读笔记(2)> 此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用 ...

  9. uml大战需求分析阅读笔记01

    <<UML大战需求分析>>阅读笔记(1) 刚读了uml大战需求分析的第一二章,读了这些内容之后,令我深有感触.以前学习uml这门课的时候,并没有好好学,那时我认为这门课并没有什 ...

  10. Hadoop阅读笔记(七)——代理模式

    关于Hadoop已经小记了六篇,<Hadoop实战>也已经翻完7章.仔细想想,这么好的一个框架,不能只是流于应用层面,跑跑数据排序.单表链接等,想得其精髓,还需深入内部. 按照<Ha ...

随机推荐

  1. 记录一次WhatTheFuck经历

    起因 很早之前就一直在维护一个git仓库,平时调研什么组件就会在里面新建一个springboot的工程用来编写示例代码. 最一开始使用的是SpringInitializr,后来网站更新之后,只能生成J ...

  2. kubernetes ingress部署

    ingress概念 ingress与service,deployment同样都是k8s中的一种资源 ingress用于实现域名方式访问k8s内部应用 安装ingress 1. 安装helm: wget ...

  3. golang import 导入的四种方式

    1 标准导入: import "package_name" 2 导入别名: import ( alias "package_name" ) 3 匿名导入: _ ...

  4. 基于WebSocket的modbus通信(一)- 客户端

    上一篇已经实现了ModbusTcp服务器和8个主要的功能码,只是还没有实现错误处理功能. 但是在测试客户端时却发现了上一篇的一个错误,那就是写数据成功,服务器不需要响应. 接下来要做的就是实现Modb ...

  5. 逻辑卷缩容报错 xfs_growfs: /dev/new/new_box is not a mounted XFS filesystem

    [root@server ~]# xfs_growfs /dev/new/new_box xfs_growfs: /dev/new/new_box is not a mounted XFS files ...

  6. 内存优化:Boxing

    dotMemory 如今,许多开发人员都熟悉性能分析的工作流程:在分析器下运行应用程序,测量方法的执行时间,识别占用时间较多的方法,并致力于优化它们.然而,这种情况并没有涵盖到一个重要的性能指标:应用 ...

  7. 解决使用`npm install`或`npm i`命令之后报`Unexpected token in JSON at position`错误的问题

    网上大多数的教程都是以下几个步骤挨个试一遍,包括 stackoverflow 上也是这么说的 删除node_modules文件夹 删除package-lock.json文件 强制清除npm缓存 npm ...

  8. npm相关命令 npm 自定义脚本命令 自动重启应用

    # 初始化生成package.json文件 npm init -y[不询问] # 查看本项目已安装模块 npm list # 安装模块 npm install 模块名[@版本号 可选]  或  npm ...

  9. kettle从入门到精通 第三十七课 kettle 全量同步(数据量小)

    1.下图是一些常见的数据同步业务场景: 实时数据:对实时性要求很高,延迟在毫秒范围内.常见的有kafka/rabbitmq等消息中间件,mysql binlog日志,oracle归档日志等. 离线数据 ...

  10. k8s 安装ingress nginx controller 并部署.net core ingress服务

    k8s 安装ingress nginx controller 并部署.net core ingress服务 本地k8s集群概览 192.168.28.132 k8smaster 192.168.28. ...