浅谈C++教学中与其他课程的融会贯通.docVIP

浅谈C++教学中与其他课程的融会贯通.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅谈C++教学中与其他课程的融会贯通   摘 要:本文讨论了在计算机专业的课程教学过程中如何与其他课程相联系,从而既能激发学生学习后续计算机课程的兴趣,又能将相对孤立的计算机专业知识结合起来,达到较好的教学效果。   关键词:C++语言;计算机组成原理;编译原理;操作系统   中图分类号:G642 文献标识码:B      1 引言      目前,大部分高校的计算机教育中各门计算机专业课程的教学是相互孤立的,学生在学完每门课程后,对每门课的内容非常了解,却不能将所学过的计算机课程联系起来,因此对计算机的整体工作过程始终都没有一个完整的认识。   本文以讲述“C++语言程序设计”这门课时如何与“计算机组成原理”、“编译原理”以及“操作系统”等课程相联系为例。其中“计算机组成原理”的开课时间在“C++语言程序设计”之前,“编译原理”和“操作系统”的开课时间在“C++语言程序设计”之后。      2 与“计算机组成原理”的联系      如例1所示,在讲述“C++语言程序设计”的文件流时,就可以联系到“计算机组成原理”中的浮点数表示。   例1:#include   using namespace std;   void main( )   { int i=10;   double j=233.4;   char a[] =adffffdf;   ofstream fout( test.txt, ios::binary );   if ( fout )   { fout.write((char *)(i),sizeof(i));   fout.write((char *)(j),sizeof(j));   fout.write(a,sizeof(a));    }   上述程序的功能是创建一个文件test.txt,并向该文件中以二进制的形式写入一个整型数10,一个浮点数233.4和一个字符串。运行这个程序后,在visual c++中打开这个文件,看到如下的结果。   000000 0A 00 00 00 CD CC CC CCCC 2C 6D 40 61 64 66 66   000010 66 66 64 66 00   其中000000和000010表示的是地址,因为CPU采用的是小端方式存储数据,即低字节对应低地址,所以前面的4个字节0A 00 00 00正确地读法是00 00 00 0A,表示整型数10;中间的八个字节CD CC CC CCCC 2C 6D 40正确地读法是 40 6D 2C CC CC CC CC CD,表示的是浮点数233.4;后面的8个字节61 64 66 66 66 66 64 66为写入的字符串adffffdf的每个字符的ASCII码值;最后的00是字符串的结束标志。   如何得知十六进制数40 6D 2C CC CC CC CC CD就是程序中写入的233.4呢?我们可以利用在计算机组成原理中学过的浮点数表示法来进行验证。   计算机组成原理中曾经讲过64位的浮点数的格式如图1所示,      其中,S占1位,表示尾数的符号位,0表示正数,1表示负数。   E占11位,表示阶码,用移码表示,表示范围为-210~210-1 之间,其中全0表示-210,全1表示210-1 。   M占52位,表示尾数小数点后的数据。   先来分析一下尾数的符号S和阶码E,即前12位40 6,将其化解成12位的二进制数0100 0000 0110。   其中,S是最高位的值,为0,即这个浮点数是一个正数。   E占用剩余的11位,为100 0000 0110,计算出其对应的十进制数为7,即阶码为7。   M占用后面的52位即D 2C CC CC CC CC CD。根据计算机组成原理中的定义,真正的尾数为1.D 2C CC CC CC CC CD,将其划为二进制形式为1.1101 0010 1100 1100 1100 1100 1100 1100 1100 1100 1100 1100 1101   阶码为7,因此真正的数据应该是将小数点右移7,移位后的数据为   11101 001.0 1100 1100 1100 1100 1100 1100 1100 1100 1100 1100 1101   其中整数部分11101 001化为十进制数为233,小数部分0.0 1100 1100 1100 1100 1100 1100 1100 1100 1100 1100 1101化为十进制数约等于0.4,加在一起等于233.4。从而验证出文件中写入的40 6D 2C CC CC CC CC CD表示的正是程序中写入的浮点数233.4。

文档评论(0)

heroliuguan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档