E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
深入理解计算机系统(CSAPP
[学习笔记]《
CSAPP
》
深入理解计算机系统
- Chapter 4 处理器体系结构&Chapter 5 优化程序性能
总结一些第四章和第五章的一些关键信息Chapter4处理器体系结构将处理组织成阶段Chapter5优化程序性能Chapter4处理器体系结构在硬件中,寄存器直接将它的输入和输出线连接到电路的其他盆。在机器级变成中,寄存器代表的是CPU中为数不多的可寻址的字,这里的地址是寄存器的ID。这些字通常都存在寄存器文件中,虽然我们会看到硬件有时可以直接将一个字从一个指令传到另一个指令,以避免先写寄存器文件再
Artintel
·
2024-09-12 00:20
学习
学习
笔记
c
csapp
csapp
-chapter1
title:
csapp
_chapter1date:2020-06-1319:24:20tags:[网课,
CSAPP
,第一章]
CSAPP
和CMUIntroductiontocomputersystem(CS15
SFARL
·
2024-09-12 00:20
博客
c++
CSAPP
学习笔记 Chapter two
先导“单个的位只能表示有/无的概念,把位组合在一起,加上解释,即给不同的可能位模式赋予含义,就能够表示任何有限集合的元素”位模式:0/1字符串,其中每个数位具有权重“计算机表示法是用有限数量的位来对一个数字编码,当结果太大以至于不能表示时,某些运算就会溢出(overflow)”“整数的运算满足整数算律,虽然可能溢出但是结果都相同”(500*400)*(300*200)=((500*400)*300
ZSYGOOOD
·
2024-09-11 23:46
career
milestone
笔记
CSAPP
csapp
[学习笔记]《
CSAPP
》
深入理解计算机系统
- Chapter 6 存储器层次结构
总结一些第六章的一些关键信息Chapter6存储器层次结构DMA局部性抖动Chapter6存储器层次结构随机访问存储器(Random-AccessMemory,RAM)分为两类:静态的和动态的。静态(SRAM)比动态更快,更贵动态(DRAM)数据流通过称为总线(bus)的共享电子电路在处理器和DRAM主存来来回回。每次CPU和主存之间的数据传送都是通过一系列的步骤来完成的,这些步骤称为总线事务(b
Artintel
·
2024-09-11 23:45
学习
学习
笔记
c
csapp
linux编码格式修改
:exportLC_ALL=“zh_CN.UTF-8”exportLANG=“zh_CN.UTF-8”(4)使文件生效source/etc/profile2、局部修改(普通用户下的修改)(1)登录ua
csapp
小僵123456
·
2024-09-10 16:59
linux
linux
运维
服务器
关于《
深入理解计算机系统
》一书的理解
先说自己为什么要读这本书?主要是因为长久以来,虽然我一直在做着程序员的工作,但我对于计算机领域这快却并没有足够的了解,至少对计算机领域没有一个整体的认识。听说这是一本提纲挈领的书籍,通过这本书认识到计算机的主干知识有哪些,然后是在主干上有哪些枝干,对于枝干上又有哪些领域,能了解到这一步就差不多了。从此后,我可以依据这个知识树,在对应的枝丫上细化我所需要的技术知识。相比起过去两年的支鳞片爪的胡乱摸索
Math_Programmer
·
2024-09-08 04:03
【
深入理解计算机系统
】 三:布尔逻辑与组合电路
4.1.BooleanExpressionsToday’sdigitalcircuitsarebuiltsothattheycanperformveryfastoperationsoverdatathatisencodedinbinary.TheunderlyingoperationsarepartofwhatisknownasBooleanAlgebra.Thisalgebraconsistso
Geeksongs
·
2024-09-07 08:47
javascript
vue
jquery
java
spring
boot
CSAPP
全书学习总结
CSAPP
(1.计算机系统漫游)学习笔记-CSDN博客
CSAPP
(第二章信息的表示和处理,附上datalab解析_datalab调整数据位置-CSDN博客
CSAPP
(第三章:程序的机器级表示-CSDN博客
%d%d2
·
2024-08-30 13:46
体系结构
学习
我的程序员读书路
CLRviaC#(第三版)你必须知道的.NET(第二版)编码:隐匿在计算机软硬件背后的语言代码整洁之道重构:改善既有代码的设计数据结构与算法:C#语言描述程序员修炼之道:从小工到专家编程珠玑(第2版)
深入理解计算机系统
weixin_30416497
·
2024-08-26 12:02
c#
javascript
大数据
ViewUI
CSAPP
二进制炸弹实验
知识点汇编语言基础GDB和OBJDUMP工具的使用实验环境Centos7x86_64获取二进制炸弹首先从
CSAPP
官网获取二进制炸弹bomb.tar:http://
csapp
.cs.cmu.edu/3e
pcj_888
·
2024-08-25 18:38
CSAPP
lab
Linux
CSAPP
Leo赠书活动-16期 名校毕业生教材
《
深入理解计算机系统
》2.《算法导论》3.《计算机程序的构造和解释》4.《数据库系
LeoToJavaer
·
2024-02-20 23:25
CSDN送书活动
送书福利
Linux 系统编程从入门到进阶 学习指南
Linux系统编程是连接高级语言和硬件的桥梁,它对
深入理解计算机系统
至关重要。无论你是打算构建高性能服务器还是开发嵌入式设备,掌握Linux系统编程是C和C++开发者的基本技能。
·
2024-02-20 17:53
后端
世界顶级名校计算机专业,都在用哪些书当教材?(文末送书)
目录01《
深入理解计算机系统
》02《算法导论》03《计算机程序的构造和解释》04《数据库系统概念》05《计算机组成与设计:硬件/软件接口》06《离散数学及其应用》07《组合数学》08《斯坦福算法博弈论二十讲
小尘要自信
·
2024-02-20 01:36
java
开发语言
数据库
算法
赠书
计算机组成
有哪些你看了以后大呼过瘾的编程书?
深入理解计算机系统
作为一个看了两遍以上的人来回答下这个问题。先看下这本书我们能学到啥?然后聊聊我看这本书的历程,最后说说我推荐的阅读方式。
小鱼资料站
·
2024-02-19 14:17
面试
面试
深入理解计算机系统
:第二章 信息的表示和处理 part1
第一部分我们对计算机系统的探索是从学习计算机本身开始的,它由处理器和存储器子系统组成。在核心部分,我们需要方法来表示基本数据类型,比如整数和实数运算的近似值。然后,我们考虑机器级指令如何操作这样的数据,以及编译器又如何将c程序翻译成这样的指令。接下来,研究几种实现处理器的方法,帮助我们更好地了解硬件资源如何被用来执行指令。一旦理解了编译器和机器级代码,我们就能了解如何通过编写C程序以及编译它们来最
土元肥肥
·
2024-02-11 14:40
Csapp
-chapter3-压栈和弹栈
bp与sp(压栈和弹栈)在计算机内部的寄存器组中,有一对寄存器非常有意思:%ebp,%esp文章目录bp与sp(压栈和弹栈)寄存器组示例图%ebp与%esp总结寄存器组示例图首先我们应该对于计算机中的寄存器组有一个逻辑的认知:以X86_64为例对其中的通用寄存器组做出了逻辑图示如下链接:X86_64寄存器组图示%ebp与%esp这个寄存器叫做堆栈基址寄存器,被调用者保存,而其保存的内容则是调用者的
味堡o_0
·
2024-02-11 14:46
csapp
汇编
学习方法
笔记
深入理解计算机系统
bomb实验
深入理解计算机系统
Bomb实验前言准备阶段上传bomb.c文件生成汇编代码进入gdb调试模式获取主要函数的汇编代码实验阶段Phase1实验探究输入字符串首地址的保存继续phase1的研究通关密钥Phase2
ECNU__YZ
·
2024-02-10 02:12
计算机系统
csapp
-chapter3--mov指令
数据传送mov汇编mov精要文章目录数据传送`mov``汇编mov精要`mov的后缀操作数指示符`movq`与`movabsq``MOVZ`和`MOVS`mov的后缀mov指令根据操作的数据size不同,具有不同的后缀指示movb(传送字节)movw(传送字)movl(传送双字)movq(传送四字)C声明Intel数据类型汇编代码后缀大小(byte)char字节b1short字w2int双字l4l
味堡o_0
·
2024-02-10 00:36
csapp
汇编
学习方法
csapp
大作业
计算机系统大作业题目程序人生-Hello’sP2P专业计算机类学 号1180100406班 级1903006学生袁文宇 指导教师史先俊 计算机科学与技术学院2021年5月摘要本文重点关注hello.c从c语言程序到可执行目标文件hello的转换过程,及可执行目标文件hello作为进程运行的过程。本文旨在通过了解hello进程的诞生,以及从诞生到执行结束后被回收的全过程,分析理解计算机系统
Pht_ywy
·
2024-02-08 06:00
csapp
大作业
计算机科学与技术学院2022年5月摘要本文通过运用所学的
csapp
知识分析hello程序从源代码到程序,从程序到进程的一生,加深巩固对
csapp
课程和计算机系统的认知,并熟练掌握相应技能.关键词计算机系统
木山的鹿
·
2024-02-08 06:27
p2p
gnu
蓝桥杯
CSAPP
大作业
摘要通过hello程序在Linux系统下走完它平凡却又伟大的一生,探讨hello源程序的预处理、编译、汇编、链接、生成可执行文件并运行的主要过程。同时说明系统是如何实现对hello程序进行进程管理,存储管理和I/O管理。关键词:预处理;编译;汇编;链接;进程;存储;I/0;目录第1章概述1.1Hello简介1.2环境与工具1.3中间结果1.4本章小结第2章预处理2.1预处理的概念与作用2.2在Ub
海盗船长1256
·
2024-02-08 05:23
linux
ubuntu
bash
CSAPP
大作业程序人生
专业计算学部学号班级学生指导教师吴锐计算机科学与技术学院2022年5月摘要本文通过分析一个简单地hello程序,通过分析其预处理,编译,汇编,链接,进程,内存管理,I/O管理几大模块,即分析了hello的从编译到执行结束输出的过程,又将
CSAPP
kbforever8
·
2024-02-08 05:46
ubuntu
linux
CSAPP
学习笔记
多年以后,面对镜子前那个秃头的人,我仍会想起第一次拿起《
CSAPP
》的那个神奇的下午……目录第一部分程序结构和执行第2章信息的表示和处理(HBD)第3章程序的机器级表示3.0概述引入3.1数据格式、寄存器
Greener Pat
·
2024-02-08 03:37
学习
笔记
2019年七月复盘+八月目标
读书本来是计划结束《曼昆经济学》,看完《聪明的投资者》,加缪《西西弗神话》,《
深入理解计算机系统
》,但事实证明,我一本都没看完,有点惭愧。这是因为我给自己规划的太多,所以八月就不看那么多了。
抟九
·
2024-02-07 21:39
CSAPP
第六章存储层次结构:存储技术(SRAM和DRAM)
随机存取内存(RAM):静态(SRAM)和动态(DRAM)。静态(SRAM)(1)静态RAM(SRAM)比动态RAM(DRAM)更快更贵。(2)SRAM用于寄存器和高速缓存;DRAM用于主存。系统最多只有几兆字节的SRAM,但却有几百或几千兆字节的DRAM。静态RAM双稳态的特性:静态RAM的电路能够无限期地保持在两种不同的电压配置中。任何其他状态都将不稳定—从那个状态开始,电路将迅速移动到其中一
暮色_年华
·
2024-02-07 03:47
计算机组成原理
单片机
嵌入式硬件
【目录】
CSAPP
的实验简介与解法总结(已包含Attack/Link/Architecture/Cache)
文章目录AttackLab(缓冲区溢出实验)对应书上Chap3LinkLab(链接实验)对应书上Chap7ArchitectureLab(体系结构实验)对应书上Chap4-5CacheLab(缓存实验)对应书上Chap6AttackLab(缓冲区溢出实验)对应书上Chap3大意待攻击的程序中使用了gets函数获取用户输入,你作为攻击者要输入一些内容来转移程序的控制权。收获理解了gets函数为什么被
BU冰糖雪梨里的梨PT
·
2024-02-06 20:50
《CS:APP》的实验
csapp
深入理解计算机系统
15213
第二章、信息的表示和处理
背景在实际编程中,依然对有些数值的处理和变换比较模糊,在看
csapp
的时候发现里面的论述很详细,常规问题不在此赘述,这里主要是记录大部分人的知识点盲区。
s.feng
·
2024-02-06 00:31
计算机基础知识
c++
第三章、汇编语言
背景大部分人对数值信息都了解七七八八,但汇编了解的人却不多,虽然我学过王爽的《汇编语言》,但那个时候对计算机理解不深刻等于没学,目前在工作中遇到很多相关问题每次查起来很麻烦,这次正好借
csapp
再系统的梳理一遍
s.feng
·
2024-02-06 00:31
计算机基础知识
c++
通过汇编深入理解C++语言
强烈建议想掌握C和C++本质的同学,动手写些简单的例子代码,再Debug模式下(注意不要用Release模式,因为很多细节会被优化掉),对照源码看汇编代码,能让你对C和C++有更本质的认识,另外建议先看懂
CSAPP
辛酉 廖镛霖
·
2024-02-03 17:14
深入理解计算机系统
汇编
c++
进程、线程的概念、区别和联系;并发、并行概念、区别和联系
以下概念摘自《疯狂java讲义》和《
深入理解计算机系统
》:程序和进程(Process):几乎所有的操作系统都支持同时运行多个任务,一个任务通常就是指一个程序。
程序员小伙伴
·
2024-02-03 14:43
Amdahl定律理解
摘自
深入理解计算机系统
第三版其中,a为并行计算部分所占比例,k为并行处理的个数。
弱花
·
2024-02-03 01:48
Attack Lab:Phase1~Phase5【缓冲区溢出实验】
注:本实验所用文件不是
csapp
官网给出的,是学校下发的。可以参考我的思路。phase1本阶段目标是使getbuf调用结束后,控制权交给touch1函数。
BU冰糖雪梨里的梨PT
·
2024-02-02 06:30
《CS:APP》的实验
缓冲区溢出
csapp
attack
lab
汇编
CSAPP
函数调用
过程(函数调用的原理)过程在高级语言中称为函数或者方法,一个过程包括将数据和控制从代码的一部分传递到另一部分。此外,它还必须在进入时为过程中的局部变量分配空间,并在退出时释放空间,大多数机器只提供了转移控制到过程和从过程中转移控制这种简单的指令。数据传递和局部变量的分配释放都是通过操纵程序栈来实现。合理的构建方法并调用,能大大增加代码的复用性,也能是代码结构更加清晰。要提供对过程的机器级支持,必须
王加冰
·
2024-02-01 05:47
《
深入理解计算机系统
》实验三 —— Buf Lab
这是
CSAPP
的第三个实验,主要让我们熟悉GDB的使用,理解程序栈帧的结构和缓冲区溢出的原理。实验目的 本实验的目的在于加深对IA-32函数调用规则和栈结构的具体理解。
3561cc5dc1b0
·
2024-01-30 22:18
扩展 GDB - 高亮显示反汇编中的 call 语句
在用GDB调试
CSAPP
bomblab时,当反汇编代码稍微具备点规模,例如超过10行,直接翻译为C语言的难度就增加了,此时考虑先找到调用的函数,然后再梳理if/else/for循环的执行流。
baiyu33
·
2024-01-29 05:45
python
开发语言
gdb
调试
汇编
csapp
CSAPP
fall2015
深入理解计算机系统
lab1 datalab详解
DataLabdatalab数据实验这个数据实验请在linux机器上面运行,实测macm1本跑不起来。windows没试过。centos上需要安装好gcc运行环境。如果跑不起来记得安装下面这个东西:yum-yinstallglibc-devel.i686运行makebtest的时候可能会有warning提示,不用管,这个时候其实已经创建完btest了,可以直接运行btest。bitXor第一个函数
Thepatterraining
·
2024-01-24 20:14
深入理解计算机系统
CSAPP
c
bit
data
lab
float
CSAPP
fall2015
深入理解计算机系统
Cache lab详解
CacheLabcachelab缓存实验代码下载从
CSAPP
上面下载对应的lab代码http://
csapp
.cs.cmu.edu/3e/labs.html环境准备需要安装valgrind。
Thepatterraining
·
2024-01-24 14:24
深入理解计算机系统
csapp
c
cache
CSAPP
第七章 Linking part2
CSAPP
第七章Linkingpart2ExecutableObjectFiles可执行目标文件(executableobjectfile)的格式与可重定位目标文件(relocatableobjectfile
Nahida_nora
·
2024-01-21 19:04
面试题
笔试
C++
c++
(2)(2.1) Andruav Android Cellular(一)
2Andruav入门3AndruavFPV4AndruavG
CSApp
前言Andruav是一个基于安卓的互联系统,它将安卓手机作为公司计算机,为你的无人机和遥控车增添先进功能。1Andruav是什么?
EmotionFlying
·
2024-01-21 09:25
【遥测无线电】
开源
无人机
遥测无线电
Copter
ArduPilot
cs:app学习笔记(2):swap
swap两个数的交换说明inplace_swapswaptest_swap运行结果字符串首尾交换
csapp
所示的错误代码运行结果结果分析修改后的程序运行结果swap两个数的交换#includevoidinplace_swap
旭日之冕
·
2024-01-20 22:16
CS:APP
c
CSAPP
阅读笔记-程序的机器级表示
程序的机器级表示计算机执行机器代码,用字节序列编码低级的操作,包括处理数据、管理内存、读写存储设备上的数据,以及利用网络通信。编译器基于编程语言的规则、目标机器的指令集和操作系统遵循的惯例,经过一系列的阶段生成机器代码。GCCC语言编译器以汇编代码的形式产生输出,汇编代码是机器代码的文本表示,给出程序中的每一条指令。然后GCC调用汇编器和链接器,根据汇编代码生成可执行的机器代码。那么为什么我们还要
只想开始
·
2024-01-19 14:05
笔记
计算机系统
【
深入理解计算机系统
】程序是如何运行的
程序是如何运行的现代计算机存储和处理的信息以二值信号表示,程序对于计算机而言就是一串二进制数据流,以流水线的方式进入CPU进行运算。而数据主要在CPU与内存之间进行传递。本文将从程序源码的结构与表现形式开始,源代码编译成可执行文件,再到执行文件的加载,最终到执行文件的运行整个过程进行梳理。###1程序的结构与表现形式大多数计算使用8位的块,即字节(byte),作为最小的可寻址的内存单元。程序对象,
cy413026
·
2024-01-19 13:42
CPU及处理器
汇编与执行
bomb lab 解题报告
对应课本
csapp
的实验https://hakula.xyz/
csapp
/bomblab.html
大红豆小薏米
·
2024-01-18 12:31
csapp
实验5-cachelab实验详解
5-cachelab1简要分析实验目的:熟悉cache,学会根据cache优化程序执行速度工作空间:csim.c和trans.c实验内容:partA:在csim.c下面编写一个缓存模拟器来模拟cache的行为,并且规定该模拟器用LRU替换策略,即替换某组中最后一次访问时间最久远的一块,还要支持一些输入可选参数操作有四种:I:加载指令L:加载数据S:存储数据M:修改数据反馈有三种:hit:命中mis
绘梨衣吖
·
2024-01-18 09:42
csapp实验
学习
7
深入理解计算机系统
0漫游跟踪hello程序的生命周期:源程序;运行在系统上;输出简单消息;终止。#includeintmain(){printf("hello,world!\n");}1)信息:位+上下文计算机系统的所有信息:包括磁盘文件、存储器的程序、存储器的用户数据,以及网络上的传输数据,都是由一串比特(0、1组成的位,8个一组称为字节)表示的,读取这些数据的上下文是区别它们的唯一方法。作为程序员,必须了解数字
brightsunp
·
2024-01-17 12:19
CSAPP
Bomb lab(内含答案)
CSAPP
Bomblab
CSAPP
的bomblab是让你通过反汇编和gdb,找到六个相应的字符串,来拆掉炸弹。本实验一共六个阶段,每个阶段对应一个字符串。
haohuaijin
·
2024-01-15 17:00
csapp
csapp
汇编
反汇编
CSAPP
实验-BombLab
bomblab是
csapp
的第二个配套实验,该实验提供了一个bomb二进制文件和一个bomb.c源文件,我们的目标是运行bomb并按照提示一步步输入字符串,直到完成整个拆炸弹的流程。
古玩
·
2024-01-15 17:57
csapp
csapp
CSAPP
- 反编译 string_length
虽然先前已经把phase_1和phase_2做出来了,但其实是参考了网络上的答案,仅仅是大概知道了关键汇编代码。但其实并没有真的懂。为啥呢?因为很多模棱两可的地方是靠猜测的,而猜测是脆弱的。重新看phase_1,第一个门槛是string_length函数。尝试逐句翻译回C代码。前提条件:知道eax存储返回值,知道rdi存储函数第一个参数。使用Intel风格的汇编。(gdb)disassembles
baiyu33
·
2024-01-15 17:23
c语言
CSAPP
- bomblab 作弊方式2: gdb jump 命令, 以及修改 jne 为 nop 指令
CSAPP
-bomblab作弊方式2:gdbjump命令,以及修改jne为nop指令厌倦了在gdb中一步步顺序执行bomb可执行程序。为什么不能自行控制程序的执行呢?
baiyu33
·
2024-01-14 15:08
gdb
c语言
汇编
调试
csapp
CSAPP
--BOMBLAB实验
目录一、bomblab介绍1.简介2.实验步骤2.1.第一步:获取bomb2.2.第二步:拆除bomb二、工具使用三、拆解分析3.1phase_1考察字符串比较3.2phase_2考察循环3.3phase_3考察条件分支(switch)3.4phase_4考察递归调用和栈3.5phase_5考察指针3.6phase_6考察链表/指针/结构3.7secret_phase考察二叉树一、bomblab介
猪猡猪猡猪
·
2024-01-14 14:55
CSAPP
c语言
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他