博主头像
zzh

ワクワク

zzh 发布的文章

CSAPP-lab-随注

CSAPP-lab-随注3、bomb-lab:​ gdb的命令layout regs视图显示,好用捏;​ 左移和右移的指令默认移位1位;​ scanf函数的作用:把传入的字符串按照空格分割(rdi),最多读取(rsi,本身是字符串格式,用来规定读取的字符串的转化形式)个,读到的字符转为数字再压入栈中​ 第五个谜题把输入的字符串保存在rdi保存的指针指向的地址中。里面放了金丝

SICP第四章&&第五章

第四章:元语言抽象序言:​ 元语言抽象就是建立新的语言。不仅可以设计新的语言,还可以通过构造求值器的方式实现这些语言。对于求值器,这也是一个过程,在应用这个语言的一个表达式时,能够执行表达式所要求的动作​ 总的来说:求值器决定了一个程序设计语言中各种表达式的意义,而他本身就是另一个程序。4.1:元语言求值器​ 把lisp语言求值器实现为一个lisp程序。可以用这个求值器来求值li

第三章:模块化,对象与状态

第三章:模块化,对象与状态导言:​ 构造大型程序的一种很有力的构造策略,就是去模拟真实世界的物理系统,基于被模拟系统的结构去设计自己程序的结构。本章主要提出了两种不同的对世界的看法,由此也引申出了两种组织程序结构的策略。​ 第一种是把注意力集中到“对象”上,把一个大型系统看成一大批的对象,其行为或状态随时间会发生变化。另一种方法是把注意力集中到流过系统的信息流上,就如同处理一个信号处理

流的实现,操作与部分应用

#lang sicp #| 流的实现,在后面发现这样定义是不行的,会导致无限递归,内存溢出。可能是因为racket对表达式应用序求值的问题 参考https://www.cnblogs.com/RChen/archive/2012/05/11/2495281.html的方法,重新定义了流的实现 (define (cons-stream a b) (cons a (delay b))) |#

3.3.5约束的传播(代码加注释)

#lang sicp #| 约束系统有两个对象,约束和连接器。 假定支持以下操作: has-value:报告连接器是否有值 get-value:得到连接器的值 set-value:设置连接器的值 forget-value:连接器忘记原本的值 connnect:通知连接器参与一个新的约束 inform-about-value:通知各个约束连接器有新值 inform-about-no-value:通