汇编语言程序设计教材勘误表(全)
教材勘误表
勘误表1.P.13,倒第9行,将“左”字改这“右”字。
倒第10行,将“右”字改为“左”字,将“左字改为“右”字。
2.P.14,表1-1在Form1与Label1之间加横线。
3.P.15,第五行改为“Text2.Text=”””。
4.P.24,倒第14行,将“WindowsState”改为“WindowState”。
5.P.26,倒第10行,名尾加冒号。
6.P.36,倒第9行,句中一对全角双引号改成半角双引号。
7.P.41,将“图”字改为“表”字,在“所示”后加“,”。
8.P.43,第9行,将“WindowsState”改为“WindowState”。
9.P.55,倒第20行,改为“Area=3.14*Radius*Radius”10.P.56,倒第7行,将“-298.66”改为“-298.67”。
11.P.57,第1行,将(B)”女”后的小于号改成大于号。
12.P.68,倒第3行,除去语句中间的“Tab(40);”。
13.P.69,倒第13行,将句中的“10”改成“11”。
倒12行“全角字符”前加“为”字。
14.P.73,第4行,改成“Area=3.14*Radius_out*Radius_out-3.14* Radius_in* Radius_in”15.P.75,删除倒第11行至倒第16行。
16.P.76,第18行,第19行中的“;”改为半角的“;”。
17.P.78,倒第6行,答案改为“10+20=030.00”18.P.86,第19行,在“多个”和“变量”之间加“分离的”。
第27行删除“,同时Case X*Y>0也是错误的”。
19.P91,第4行,改成“If x+y>z And x+z>y And y+z>x Then”20.P.96,倒第10行。
改为“Sub Command2_Click()”21.P.100,第3行的句尾加冒号。
22.P.106,第12行的句尾加冒号。
《C++语言程序设计教程》杨进才 勘误表
《C++语言程序设计教程》杨进才勘误表说明:以下红颜色的为改正后的内容,蓝色为需要去掉的内容。
P171,6.1.3 第8行:全局变量、静态变量、字符串常量、常变量存放在全局数据区;P173,图6-1地址栈顶0013FF180013FF24 栈区0013FF28 函数的返回地址栈底程序入口代码区004018E8004018F4变量全局数据区0047773C00480410堆区P173,程序解释后两段:全局常变量、全局变量、局部静态变量、字符串常量在程序运行前在全局数据区进行分配。
并且依次按照全局常变量、全局变量、局部静态变量的顺序从低地址向高地址分配。
其中各类变量按定义的先后次序分配,全局变量、局部变量也一样。
当程序运行结束后,各全局数据区各类变量的空间被系统收回,收回的顺序与分配的顺序相同,即:先分配先收回。
P174,程序解释倒数第1段:变量的生存期为从产生到消失的时期。
全局变量(包括全局常变量)、静态变量、局常变量、字符串常量生存周期为整个程序的生存周期,因此称为静态生存期;局部变量的生存周期起于函数调用,结束于函数调用结束,其生存期是动态的,因此称为动态生存期。
P186 6.5本章小结中第7行:◇全局变量(包括全局常变量)、静态变量、字符串常量、常变量存放在全局数据区; 所有的函数和代码存放在代码区; 为运行函数而分配的函数参数、局部auto变量、返回地址存放在栈区。
堆区用于动态内存分配。
◇全局变量(包括全局常变量)、静态变量、字符串常量、常变量生存周期为整个程序的生存周期,因此称为静态生存期;局部auto变量的生存周期起于函数调用,结束于函数调用结束,其生存期是动态的,因此称为动态生存期。
P187 习题6:(3) C++程序的内存分为四个区:________, ________, ________, ________。
全局变量(包括全局常变量)、静态变量、字符串常量、常变量存放在_______区,所有的函数和代码存放在________区,为运行函数而分配的函数参数、局部变量、返回地址存放在_______区。
《C语言程序设计》及《习题集》(姚合生等)勘误表(1002)
P66
倒数第11行
______
______;
P67
第4-5行
if(n==1) m=______
elsem=5+______
if(n==1) m=______;
elsem=5+______;
P67
第12行
m=______
m=______;
P67
P49
习题3下
第2行
1.若x、y、z都定义是int类型且初值为0,
1.若x、y、z都定义成int类型且初值为0,
P49
习题3下
第3行
D. x+y+z;
D. x+y=z;
P83
第8-11行
【思考】例5-5中,如果输入n=8,结果为8!=-25216。为什么?
因为8!=40320超出了int(整型)变量32767的范围而发生溢出性错误,......在输出时按照long型格式“%ld”输出即可。
倒数第19行
s=______
s=______;
P88
倒数第5-4行
C.将文件内部位置指针从当前位置后移10个字节
D.将文件内部位置指针从当前位置前移10个字节
C.将文件内部位置指针从当前位置向文件尾移10个字节
D.将文件内部位置指针从当前位置向文件头移10个字节
P162
倒数第18行
case'%':if(b!=0) printf("a%b=%d\n",a%b);
《C语言程序设计》勘误表
页码
位置
原文
修改为
《C语言程序设计习题解析与实验指导》教材勘误表
错误页及行
原内容
修改后的内容
修改说明
第39页选择第1题解析的第2行最后
…答案B是关键字,而…
…答案C是关键字,而…
将“B”改为“C”
第39页倒数第13行最后
;;
;
删除多余的“;”
第39页倒数第9行-倒数第5行
【参考答案】C
【解析】此题考查的是实型常量的表示方法:实型常量只采用十进制表示,其表示方式分为小数形式和指数形式两种。答案A采用指数形式,但指数部分3.1不是整数,故不合法;答案B同样采用指数形式,但尾数部分被省略了,也不合法;答案C采用小数形式,其小数部分可以省略;;答案D表示的是整型常量。因此本题选择答案C。
此题参考答案原“5处”改为“7处”;在16行最后再增加红色字体描述的两处修改
第104页第24行
char str[20]="programming";
char str[20]=" ห้องสมุดไป่ตู้rogramming";
字符数组初始化的时候最前面,即字符p前增加一个空格
第105页第2行与第3行之间
i do not love
原答案和解析是错的!
第39页倒数第3行
A. 01
A. 012
增加数字“2”
第46页倒数第14行
B. int(x*100+0.5)/100.0
B.(int)(x*100+0.5)/100.0
在int两边增加“( )”
第102页第26-28行(程序修改第1题的参考答案)
【参考答案】程序需要在5处作修改:行1改为:……,改为:s++;
吉林大学Java程序设计教材勘误
NullPointException 8. thrownew RuntimeException(e); …… 13. thrownew NullPointerException(e); java:15 java:5 Method 1() java:6 1. returnTypemethodName(…… // 声 明 catchThow Exception() 方 法…… 7.thrownew Exception(e); 14.thrownew Exception(e); 19.thrownew ArrayStoreException(“… 21.thrownew Exception(e); 2.……java:9) 3.……java:28) 5.……java:16) 6.……java:7) 9.……java:23) 10.……java:14) 13.……java:21) 最后通过 function1 中的……
P162 例 7.3 程序 两处缺空格 P163 1. 数组 的 复制 第 2 行 P169 2.LinkedList 链 表 第1行 P179 例 7.14 程 序四处缺空格
11.a=newint[]{99,100}; 14.a=newint[]{99,100}; int dest[]=Arrays.copyOf(src,src.length); 所以 LinkedList 的优缺点恰恰也是 链表的优缺点, 7. returnthis.id; 11.if(this.id==e.id) returntrue; 12.elsereturnfalse;
第 6 章主要问题是:因程序中删掉 import chapter6;语句而致输出结果行号对应不上。 页码位置 P142 倒数第 5 行 P143 例 6.2 输 出结果最后 1 行 P143 例 6.3 程 序说明第 1 行 多空格 原文 java:6 java:7 纠正 java:4 java:5
《C语言程序设计》-第1版-勘误表
倒 19 1 14 8 11 19,22 源程 序中 源程 序中
回车符 由于 m 不可能 if(i>m/2) 回送主函数 9.42690e+157 : child men*3+women*2 +child*0.5==45
换行符 当 m>2 时,由于 m 不可能 if(i>m/2 && m>1) 回送主调函数 9.426900e+157 (伪代码) ;
倒 5-6 偏移 倒 13 /* 指针 p 向 倒 11 :","%s 1 而不是将字符串放到
165
12
167
倒9
数组名是地址常量,不能对它 赋 值 。 数组名是常量,不能对 strcpy(sp, ”Hello”); 也 教材无错。仅补充 它赋值。 是不能执行的, 因为 sp 所指之 说明另一种情形 处为字符串常量,其存储空间 在据台存储区的常量池中。 char *s2) char *s2); 函数原型缺少分号
删除该两行 数组名是常量
130 133 134 135
4-5
或者定义„„ if(i<=j) 回车 回车 回车 回车 if(i<j) 换行 换行 换行 换行 short int 函数的参数;在函数 if(n<=0||n>8) n = 8; short int 元素的地址 /* 指针 p 指向 : %s 而不是将字符串的内容放到
1 倒1 2-3 倒 138 15,17 10,11 140 13 倒 2
删除该两行。应该 引导读者习惯从 0 开始计数。 不含主对角线元素
143 6,11,12 int 152 20 函数的参数,在函数 9 行后 156 添加 157 157 158 163 165 7 int
《x86汇编语言:从实模式到保护模式》勘误表
1,第42页,检测点4.2,第1题。
本程序有误,正确的内容是:(由网易邮箱读者'小小鸟'、QQ读者'闪耀'、'流星梦'和'二玉'发现)mov ax,0xb800mov ds,axmov byte [0x00],'a'mov byte [0x02],'s'mov byte [0x04],'m'jmp $times 510-($-$$) db 0db 0x55,0xaa2,第52页,第24行,正确的内容是:(由QQ读者'闪耀'发现)mov ax,[0x02] ;按字操作3,第53页,第4行,正确的内容是:(由QQ读者'tome'发现)mov [0x02],bl4,第65、80、94、129、138页中,需要更正和明确loop指令、短转移指令jmp short、相对近转移指令jmp near和相对近调用指令call near的操作数计算方法和执行过程。
(由网易邮箱读者'小小鸟'、QQ读者'艾小羊'提出)首先,这些指令的操作数都是相对于目标位置处的偏移量。
但需要指出的是,偏移量的计算方法取决于实际的编译器,书中所说的“用目标位置处的汇编地址减去当前指令的汇编地址,再减去当前指令的长度”,不应算错。
其次,处理器的执行过程严格地说,是非IA-32架构的组成部分。
因此,除了结果是确定的,各步骤的先后次序取决于处理器的设计。
历史上,指令的执行过程有不同的解释和说法。
但本书对这些指令执行过程的解释比较模糊和武断。
为严谨起见,再统一描述如下:在以上指令的编译阶段,编译器用目标位置处的汇编地址减去当前指令的下一条指令的汇编地址,结果做为操作数;处理器在执行一条指令时,指令指针寄存器IP会自动指向下一条指令。
因此,当以上指令执行时,IP的内容就是下一条指令的偏移地址。
《C语言与程序设计方法(第二版)》勘误表_20120604
《C语言与程序设计方法(第二版)》勘误表请大家将发现的错误补充进来(请用不同颜色表示你的增加),谢谢!P19例2.1整型常量的表示。
#include <stdio.h>void main() {int a, b, c;a=50; // a为十进制整数50b=-032; // b为八进制整数-32c=0x5b; // c为十六进制整数5bprintf("a=%d, b=%d, c=%d\n", a, b, c); //以十进制整数形式输出a,b,c的值}运行结果如下:a=50, b=-26, c=91P31例2.7整型数据的格式输出。
# include <stdio.h>void main() {int a=-2, b=25;unsigned u=65534, v=28;short c=45;char d='A';printf("a:%d, %u, %o, %x\n", a, a, a, a);printf("u:%d, %u, %o, %x\n", u, u, u, u);printf("b:%d, %u v:%d, %u\n", b, b, v, v);printf("c=%d, d=%d\n", c, d);}运行结果如下:a:-2, 65534, 177776, fffeu:-2, 65534, 177776, fffeb:25, 25 v:28, 28c=45, d=65P33(4) 指定输出宽度。
指定输出宽度和对齐方式需用到附加格式字符m、.n和-。
其中m 为一正整数,用来指定输出宽度(对于f格式符,输出宽度包括整数位、小数点和小数位;对于e 格式符,输出宽度包括尾数部分和指数部分),如果数据的实际宽度比指定输出宽度大,则按实际宽度输出;附加格式符“.n ”的作用是指定输出n 位小数,对于e 格式小数点后仅输出n -1位;附加格式符“-”是用来说明采用左对齐方式,没有“-”时默认是右对齐方式。
visual basic程序设计学习指导与上机实践_范慧琳(勘误表)
(1)分析:在登录窗体中
(1)分析:在登录窗体Form1中
P200倒数8行
体;否则
体FrmSecond;否则
P201第11行
If LCase(TxtName.Text) = "user" And TxtPassword.Text = "5868" Then
If LCase(TxtName.Text) =UserNameAnd TxtPassword.Text =PasswordThen
P152倒数13-15行
If mark>=90 Then'条件表达式书写错误
Print "优"
ElseIf 80 <= mark < 90 Then
If mark>=90 Then
Print "优"
ElseIf 80 <= mark <90 Then'条件表达式书写错误
P162倒数2行
同样,在Form_Load事件
P26第8行
③按元素数组的
③按数组元素的
P26倒数16行
类型必须要先定义。
类型在声明时必须确定。
P26倒数15行
②动态数组声明是指在声明数组时未给出数组的大小(省略号中的下标)
②动态数组在声明时未给出数组的大小(省略括号中的下标)
P26倒数8行
2.在窗体上添加一个命令按钮,编写如下代码,写出下列语句的运行结果。
操作步骤如下。
P34倒数第20行
Dim k
Dim kAs Integer, mc As Integer
P34倒数第18行后插入2行
Call mingci
数据结构教材勘误表
数据结构(c语言版)清华大学出版社秦锋主编勘误(红色字体为修改后的内容)1.教材30页算法描述如下(假定顺序表A和B的存储空间足够):void Inter_sec (PSeqList A, PSeqList B ){ /*求集合A和B的交集,入口参数:指向顺序表的指针,返回值:无,结果存放在顺序表A中*/ int i=0;while(i<A->length){if(!Location_Seqlist(B,A->data[i]))/*B中无A->data[i]*/Delete_SeqList(A,i+1);else i++;/*考察下一个元素*/}}2.教材43页算法如下:(考虑m=1的特殊情况)int josephus_ LinkList (LinkList josephus_Link, int s, int m){ /*求约瑟夫问题的出列元素序列,入口参数:已经存放数据的链表头指针,起始位置s,从1报数到m,出口参数:1表示成功,0表示表中没有元素*/LinkList p,pre;/*p指向当前结点,pre指向其前驱结点*/int count;if ( ! josephus_Link){ printf(“表中无元素”);return (0);}/*找第s个元素*/p= josephus_Link;for(count=1;count<s;count++) /*查找第s个结点,用p作为第s个结点的指针*/ p=p->next;printf(“输出约瑟夫序列:”);while ( p!=p->next) /*输出n-1个结点*/{ pre=p->next;while(pre->next!=p)pre=pre->next;/*pre指针初始化,pre是p的前驱指针*/ for(count=1;count<m;count++){ pre=p;p=p->next;} /*for*/printf(“%d\t”, p->data);pre->next=p->next;free(p);p=pre->next;}/*while*/printf(“%d\t”,p->data); /*输出最后一个结点*/free(p);return 1;}算法2.17该算法时间复杂度是O(n*m)。
《C语言程序设计教程》勘误表(终)
87
2行D选项
原文:!(x%2)==0改正:!(x%2-1)==0
91
13
原文:main()改正:voidmain()
103
2
在“{”后插入:void func( );
104
第6题第(1)题第6行尾
第6题第(2)题第5行尾
原文:string;改正:string( );
原文:string;改正:string( );
105
1
原文: 改正:
108
第4题第4行
原文:{ int n,a[]改正:{ intj,a[]
111
第3题第2行
原文:intb[4][4]改正:inta[4][4]
174
第1行前插入
scanf(”%d”,&n);
改正:if ….‘Z’))
47
13
原文:(x≥1)
改正:(x=1)
47
16-19
将“提示:….之分。”全部删除。
52
倒数第2行
原文: 改正:
52
倒数第1行
原文: 改正: 、 、
55
13
原文: 改正:
55
15
插入一行:
#include <math.h>
57
8
原文:f(n-2)-3f(n-1)+f(n-1)
附录I
23(17)
对应字符:原文↕,改正:↕即原符号下加一短横。
附录I
最后一空
原文为空白,改正:127(7F)⌂
C语言程序设计实验指导与习题解析
页码
行数
42
倒数第3行
原文:printf(”\n b>a && b<c”,
讲义勘误表3
(1 , 7] B.( 7 , 7] C( 1 , 7] D( 7 , 7]
2
2
2
2
603
푠 b 修改为 b
611
B 选项改为-i
748
修改为 㔠
(l) 푠 B B修改为 푠 B 773
(2)C 选项修改为 l −
B
774
AAl푠c
(l)lilililiB,a 修改为 lililil, B,a
750
815
正投影点 E 改为 D
题目本身没问题,只是这道题有三问,没区分好
827
第一根红线那是第二问,第二根红线,是第三问
题目修改为:
859
将直线 ⸱ 푠 绕原点逆时针旋转 90 度,再向右平移 1 个单位,求该直线
901
若 MF2 MF2 改为 MF1 = MF2
(1) 抛物线为⸱B 푠
908
(2) D 选项改为-
420
条件为砀l 푠 li砀B 푠 Bi砀 B 푠 砀
428
问题修改为:它的最小项是第几项?
439
图:
440
最后一行的 : 的冒号,修改为“,”
443
446
449
区间修改为[0, ]
469
516
点 P 为该平面内以动点
541
修改为
点 P 为该平面内一动点
558
选项改为
(
,
2
)
23
选项修改为
559
M、等级(N)修改为: 284
i
294
“两个两点”修改为“两个零点”
301
题前加“已知函”
303
前补充
0,π2
304
程序设计勘误表
《AVR单片机GCC程序设计》勘误表芯艺 2006-12-131. 内容中所有提到的网址改为2. 第7页第10行“提及”改为“提到”3. 第32页第3行更正为“此类段可有10个,执行顺序为fini9到fini0”4. 第34页第2行更正为“没有掉电,则其内容应该保持”5. 第80页第13行去掉“1”6. 第92页第11行“控向串行口输入”改为“向串行口输出”7. 第97页最后一行改为“简化,可自己编写itoa函数,把十六进制转换功能去掉,使代码量更小”8. 第98页第5行去掉“间实现”9. 第103页第6行“(也是需要”改为“(也是不需要”10.第119页倒数第2行去掉后一“声明”11.第135页最后一行“设置”改为“设定”12.第136页倒数第3行“须”改为“需”13.第153页倒数第2行去掉“键”14.第166页第2行“配置文编辑器”改为“配置文件编辑器”15.第212页第一行程序改为“LDFLAGS += -Wl,--section-start=.eeprom=0x810010 ”芯艺 2007-01-2316.第24页表2-1 第二行第三列“输出” 改为“输入”17.第57页第10行注释中“同期” 改为“周期”芯艺 2007-08-25 18.第81页倒数第5行“独立的时钟”改为“独立的定时器”芯艺 2007-10-14 19.第54页第6行 PORTD=_BV(PB0); 改为 PORTB=_BV(PB0);芯艺 2007-12-1620.第1页倒数第7行 “ATmega 系列的主流产品” 改为“是目前A VR单片机的主流产品”21.第2页最后一行“它也是到目前为止GCC所支持的唯一一种8位处理器” 这句话是错误的,由于作者水平有限当时是那样认为的.22.第139页程序中twi_stop函数应改为:void twi_stop(void){TWCR = _BV(TWINT) | _BV(TWSTO) | _BV(TWEN);while(TWCR&_BV(TWSTO));//等待停止信号完成}即应添加后边一行等待停止信号发送完成。
C语言程序设计勘误表
C语言程序设计勘误表C语言程序设计勘误表说明:红色为修改后的字符。
1、p16原文:大写字母O的二进制编码依次是:0x1f,0x24,0x42, 0x42, 0x42, 0x42, 0x24, 0x1f。
中国的“中”字的二进制编码的按照从上到下,从左到右顺序依次进行二进制编码,共需要32个字节。
前8个字节的二进制编码是:0x01,0xf0,0x01,0xf0, 0xff,0xff,0xc0,0xf3,其余部分读者可以作为练习将其写出来。
修改为:大写字母O的二进制编码依次是:0x18,0x24,0x42, 0x42, 0x42, 0x42, 0x24, 0x18。
中国的“中”字的二进制编码按照从上到下,从左到右顺序依次进行二进制编码,共需要32个字节。
前8个字节的二进制编码的十六进制表示是:0x01,0x80,0x01,0x80, 0xff,0xff,0xc1,0x83,其余部分读者可以作为练习将其写出来。
2.ASCII码下数5行原文:从0x20到0x7f共95个编码修改为:从0x20到0x7e共95个编码2、p17原文:因此它的国标码是0x5050,而它的区位码是0x3030。
修改为:因此它的国标码是0x5056,而它的区位码是0x3036。
3、p25原文:1.9 求十进制数157和-153的8位、16位原码和8位、16位补码。
修改为:1.9 求十进制数157和-153的16位原码和16位补码。
4、p36例2.4后自然段的第3行原文:'t'、'\11'、'\011'、'\x9'和'\x09'均表示水平制表符。
修改为:'\t'、'\11'、'\011'、'\x9'和'\x09'均表示水平制表符。
5、p43 例2.9原文:!(year%4) && year%400 || !(year%400)上式等价于(!(year%4) && year%100 ) || !(year%400)修改为:!(year%4) && year%400 || !(year%400)上式等价于(!(year%4) && year%100 ) || !(year%4006、p76 例3.16原文:scanf(“%s%1s”, &c1, &c2);修改为:scanf(“%s%1s”, c1, &c2);7、p81例3.27原文:printf("%f/t", atof(” 123.456asdf”));printf("%f/t", atof(”\n-qwer”));printf("%f/t", atof(”\n+qwer”));printf("%f/n", atof(”3COM”));修改为:printf("%d\t", atoi(” 123.456asdf”));printf("%d\t", atoi(” 123456.789”));printf("%d\t", atoi(”\n-qwer”));printf("%d\t", atoi(”\n+qwer”));printf("%d\n", atoi(”3COM”));例3.28原文:printf("%d/t", atoi(” 123.456asdf”));printf("%d/t", atoi(” 123456.789”));printf("%d/t", atoi(”\n-qwer”));printf("%d/t", atoi(”\n+qwer”));printf("%d/n", atoi(”3COM”));修改为:printf("%d\t", atoi(” 123.456asdf”));printf("%d\t", atoi(” 123456.789”));printf("%d\t", atoi(”\n-qwer”));printf("%d\t", atoi(”\n+qwer”));printf("%d\n", atoi(”3COM”));p82 例3.28原文:printf("%ld/t", atol(” 123.456asdf”)); printf("%ld/t", atol(” 123456.789”));printf("%ld/t", atol(”\n-qwer”));printf("%ld/t", atol(”\n+qwer”));printf("%ld/n", atol(”3COM”));修改为:printf("%ld/t", atol(” 123.456asdf”)); printf("%ld\t", atol(” 123456.789”));printf("%ld\t", atol(”\n-qwer”));printf("%ld\t", atol(”\n+qwer”));printf("%ld\n", atol(”3COM”));8、p86 例3.33原文:printf(”input a character:\n”)c = getchar();c >= ’0’&& c <= ’9’? (d = ~(c –’0’) & 0xff, printf(”0x%x\n”, d)) : printf(”%c”, c);修改为:printf(”input a character:\n”);c = getchar();c >= ’0’&& c <= ’9’? (d = ~(c –’0’), printf(”0x%x\n”, d&0xff)) : printf(”%c ”, c);9、 p104 例4.15原文: Char c;修改为:char c;10、 p110 例4.22 修改为:计算 +-+-=!7!5!3)sin(753x x x x x ,11、 p112 倒数第6行原文: d=-(((3*x-4)*x)-5)*x+13/((9*x-8)*x-5)修改为:d=-( (((3*x-4)*x)-5)*x+13)/((9*x-8)*x-5) 12、 p113 第1行原文: d=-(((3*x-4)*x)-5)*x+13/((9*x-8)*x-5)修改为:d=-( (((3*x-4)*x)-5)*x+13)/((9*x-8)*x-5) 13、 p129原文:修改为:14、 p151 例5.11原文: if (n==0||==1) return 1;修改为:if (n==0||n ==1) return 1;15、 p166 第5.11题原文: (2) 若n i 是奇数,则n i+1=3n i +2修改为:(2) 若n i 是奇数,则n i+1=3n i +116、 p186 例7.1原文: initgraph( gdriver,gmode, "d:\\tc\\bgi");修改为:initgraph( &gdriver,&gmode, "d:\\tc\\bgi");17、 p194原文:修改为:18、 p222 倒数第8行开始原文: cout<<a[k]<<" ";<="" p="">cout<<endl;< p="">修改为:printf(“%d ”,a[k]);printf(“\n ”);原文:左边修改为:右边20、p292 第13行原文:while(*s++=*t++) ;修改为:while(*t++=*s++) ;21、p311 从9.11下数4行原文: B W Kernighan 和D M Ritchie修改为:B.W.Kernighan 和D.M.Ritchie22、p326 第10行原文:char num[4];修改为:char num[5];23、p330 倒数第1行原文:scanf("%d% d% %",&a.start.x,&a.start.y);修改为:scanf("%d% d%",&a.start.x,&a.start.y);24、p335 第16行原文:表达式的值是ˊaˊ,修改为:表达式的值是ˊmˊ,25、p367 倒数第3行原文:while(current->data!=n)修改为:while(current->data!=n && current != NULL) 26、p369 第2行原文:while(current->data!=n)修改为:while(current->data!=n && current != NULL) 27、p371 10.26原文:t=p1->next;prior2->next=p1;修改为:prior2->next=p1;t=p1->next;28、p402 倒数第6行原文:fwide函数修改为:fwi nd函数原文:fclose函数返回0,否则返回NULL。
C语言程序设计基础教程----勘误记录
本文由VS永恒11贡献 doc文档可能在WAP端浏览体验不佳。
建议您优先选择TXT,或下载源文件到本机查看。
程序设计基础教程—— 程序设计基础教程——C 语言版 —— 勘误条目: 勘误条目: 条目 目录: 节的“标识符” 目录:2.3 节的“标识符”改到 1.7.1 节 第一章 C 语言程序设计基础 第二章 C 语言中的数据类型及其基本操作 P33 17:(存储值为 129) P33 15:0100,0000,1100,0000,0000,0000,0000,0000=(40C00000)16 P33 11:0100,0000,0010,0000,0000,0000,0000,0000=(40200000)16 P33 09:(-4)+127=123=(01111011)2 P33 07:0011,1101,1100,1100,1100,1100,1100,1100=(3DCCCCCD)16 P33 04:(40C00000)16 第 2 ̄9 位为指数 P33 03:第 2 ̄9 位 P33 02:编码(40200000)第 2 ̄9 位, P33 02:其编码(3DCCCCCD)第 2 ̄9 位 P40 07:nB nA P40 01:32000=32000 P41 08:num=fVal; P42 02:和标识符 和标识符 P44 05:-32768 ̄+32767 P47 02:(变量或常量)对应存 储单元中的值传递到目标变量 存 P47 图 2-13 02:int m,n; P52 23 ̄27 行: (1) (x*x+y*y)>1 && x>=-2 && x<=2 && y<=2 && y>=-2 (2) (x*x+y*y)<1 (3) (x>2||x<-2||y>2||y<-2)||(x*x+y*y)<1 (4) (x*x+y*y)<=1 && x>0 && y>0) P53 06: 标识符 、标识符、运算符及其运算 P54 08:char ch='A'; P55 11:nX<nY?nY++:nZ++; P55 题 2-14: #include … ++m&&++n||k--;printf("m=%d\tn=%d\tk=%d\n",m,n,k); P56 01:#include 语言的程序结构、 第三章 C 语言的程序结构、语句分类和数据的输入输出 P57 图 3-1 函数 1、函数 2 等接于源程序 i 模块下。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
汇编语言程序设计教材勘误表
第1章计算机基础知识
1、P1倒数第4行,“CPU”改为“主机”
2、P3第10行,“包括”改为“、”
3、P4倒数第9行,“十”改为“二”
4、P5第21行,下标“16”改为“10”
5、P16第22行,倒数第2行,“为用”改为“是用16进制”
第2章8086系统结构
1、P32倒数第16行,在“存放”后面添加“的”
第3章8086指令系统
1、P33第3行,删除“8086”后面“的”
2、P34第12行,在“字段”后面添加“。
”
3、P36第5行,在“(DS)X16”后面添加“+”;P36第21行,“06H”改为“10H”
4、P37第9行,“ARRAY”改为“BUF”
5、P37第18行,最后一个“值”前添加“的”
6、P38第9行,最后一个“值”改为“的值再加上偏移量”
7、P39第2行,“课程”改为“章节”;第10行,“寻址方”后面添加“式”;第21、22、24、26、28行,“寄存器”前添加“目的操作数是”
8、P40第6行,“栈项”改为“堆栈”;第27行,“小节”改为“小结”
9、P41倒数第1行“的存储区域”删除
10、P42第13行,“为”改为“位”
11、P43倒数第2行“SI”改为“DI”
12、P44第10行,“DS寄存器”后面添加“ES寄存器”;倒数第5行,“OPRD”和“OPRS”分别改为“OPD”和“OPS”
13、P45第1行,“OPRD”改为“OPR”;倒数第13行,“AF=1”
14、P46第11行和倒第13行,“OPRD”改为“OPR”;倒数第6行,“(SI)=1000H”;倒数第4行,“有借位,没有溢出”改为“AF=0,PF=0”
15、P47第4行,“11101010B”删除;第8行,倒数第2行,“men”改为“mem”;第13行,“DX,AX”改为“(DX)(AX)”;第15行,“对标志”应该另起地一行;第21行,“[BXI]”改为“[BI]”;第23行,“0F11”改为“0F1”
16、P48第1行,“OPRD”改为“OPR”;倒数第11、14行,“081H”改为“81H”;倒数12行,“124”改为“121”
17、P49第1行,“DX=00”改为“0000H”;倒数第1行,“做”改为“执行”
18、P50第5行,“DAA”改为“DAS”
19、P51第14行,“OPRD”改为“OPR”;第14、23行,“将”后面添加上“BL中的”,倒数11行,“0EFHH”改为“0EFH”
20、P52第11行,“CF移后的值根据”改为“CF为移后的值确定,并根据”、倒数第4行,“字节”改为“字”
21、P53第6行,“ASC”后面加上“II”;第16行,“和”改为“或”
22、P54倒数第7行,删除“那里的”
23、P55第1行,“LABEL”改为“LABLE”
24、P56倒数第10行,“JL”后央添加“M”
25、P57倒数第13、15行,“LABEL”改为“LABLE”
26、P58第11行,“IP←IP+D16”改为“LABLE的偏移地址”;第13行、15行,“堆栈←IP”改为“SP←SP-2,
SS:[SP]←IP”;第13行,“返回指令”后面添加“RET”;倒数第3行,“ASC”后面加上“II”
27、P59第17行,后面的“DS”改为“ES”
28、P60第4行,“GN”改为“AGN”;第21行,“AGN”改为“LOP”;倒数第6行,删除“至”
29、P61第2行,“FFH”改为“0FFH”;第17行,删除“至”;倒数第3行,删除“量”
30、P63第15行,“指令指令时”改为“指令时”
31、P64第10行,“是”改为“与”;倒数第11行,“数据”改为“地址”;倒数第8行,删除“W”;倒数第7行,“内容”前添加“端口地址”
32、P65倒数第13行,“中段”改为“中断”;倒数第5行,“003F8H”改为“003FFH”
33、P66倒数第13行,“在后面的章节”改为“8.5”
34、P67倒数第14行,“在后面的章节”改为“5.4”
35、P69倒数第4行,“O”改为“0”
第4章8086汇编语言程序格式
1、P72第2行“。
”改为“,”
2、P73倒数第10行,“07”改为“01”、倒数第1行,“于”改为“与”
3、P74第5行、倒数第10行“4个字节”改为“8个字节”
4、P75倒数第8行“THIIS”改为“THIS”
5、P78第8行“字符”改为“字节”、第7行“8”改为“位”
6、P79倒数第5行,“指令指令”改为“指令的地址”
7、P81倒数第7行,“相邻的连接”改为“连续”
8、P83倒数第12行,“他”改为“它”、倒数第9行,“ASC”改为“ASCII”
9、P84第11行,“ASC”改为“ASCII”、
10、P93倒数第12行,“条件汇编与宏指令”改为“宏指令与条件汇编”
11、P95倒数第22行、18行、14行,“BUF”改为“STR”
12、P96第11行,“DA”改为“DX”、倒数第9行,“这道题目”改为“此例”
13、P99第12行,将“(1)”删除、“(2)”改为“2.”、“(3)”改为“3.”
14、P99第21行,将“IFIND”改为“IFIDN”
15、P101第1行,“DAYA”改为“DATA”
第5章基本程序设计
1、P111 倒数第1行“X+Y”改为“X2+Y2”
2、P112 第3行“X2和Y2”改为“X2和Y2”,本页的17、20、21、22行类同
3、P114 第10行最后的“-”改为“_”;第20行后面增加1行,内容为“INT 21H”
第7章基本程序设计
1、P199 倒数第6行“.”改为“,”
2、P200 倒数第15行“INMESSAGE”改为“INBUF”,倒数第4行“BINTOASC”改为“ASCTOBIN”
3、P206 第13、14行在“FREEDOM-1”和“FREEDOM+5”前加上“OFFSET”,第21行“MARK”改为“SIGN”,第24行“EDNS”改为“ENDS”
4、P191、192、196、198、203、204、20
5、207、208、209、210中的“EDNS”改为“ENDS”
第8章基本程序设计
1、P235 倒数第1、
2、3行的“PUSH”改为“POP”
2、P236 第1、2、3行的“PUSH”改为“POP”
3、P237 倒数第8行的“矢”改为“向”。