欢迎来到天天文库
浏览记录
ID:31376714
大小:109.00 KB
页数:7页
时间:2019-01-09
《计算思维下再谈补码设计思想》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、计算思维下再谈补码设计思想 摘要:按照计算思维过程对补码及运算设计思想进行了阐述。论述了在计算机组成原理课程中为什么需要设计补码,补码能解决哪些运算问题,分别从补码加减乘除法运算对补码运算特性进行了讨论。最后对补码设计的计算思维过程进行了总结。 关键词:计算思维;降维攻击;补码;运算器;计算机组成原理;计算机教育 中图分类号:TP339文献标识码:A文章编号:1009-3044(2015)29-0070-02 AgainDiscussDesignideaofthecomplementontheComputatio
2、nalThinking SUNLi (ChengxianCollegeofSoutheastUniversity,Nanjing210088,China) Abstract:InaccordancewiththeComputationalThinkingprocess,DesignideaoftheComplementandoperationisdiscussed.Whydoweneedtodesigncomplementinthecomputercomponentprinciple.Thecomplementca
3、nsolvewhatarithmeticproblems.Operationalcharacteristicsofcomplementisrelatedandanalyzedfromtheaspectsofaddition,subtraction,7multiplicationanddivision.Thefinal,SummarytheofdesignideaofthecomplementontheComputationalThinkingprocess. Keywords:computationalthinking
4、;dimensionreductionattack;complement;ALU;computercomponentprinciplecomputereducation 在《三体》中高等文明的二向箔可以使太阳系从三维瞬间降为二维毁灭,这个就叫降维攻击。这让我想到了在运算器设计中出现的补码,补码的出现对原码、反码就是降维攻击,补码在运算器设计中的地位至今无法撼动。 项目《基于计算思维的计算机组成原理课程研究与教学》进行中,需要围绕计算思维概念选择适用计算思维培养的教学案例,在运算器设计这一章,补码全方位完成这一任务,因
5、此选择补码作为计算思维教学案例之一。 根据项目前期对计算思维的研究,在本项目中定义的计算思维概念是:在遇到问题时,考虑用计算工具在问题可解的情况下,思考如何运用计算语言描述解决问题的过程。这个思考过程的结果是可在计算工具上运行并由计算语言表述的有先后顺序的序列。 课程内容中第二章讲述运算器是怎么设计的,为了解决这一问题,出现了原码。但原码却有负众望,在运算器设计中,最基本的加法运算器设计不能实现,原码乘除法运算器的设计又以加法器器件为基础。加减器设计是运算器设计的基础,这就必需有新的机器数编码产生。7 那么新的编码
6、必须做到能完成加法器设计。再分析原码加减运算器设计不能实现的根本原因,就在于参加运算的两个数值数据的符号位上,那么能设计出符号位直接参加运算的编码吗,如果能,就可以实现两个数值数据连同符号位一起参加运算了。我们从这个设计目标出发,设计出了新的编码,取名补码。注意补码是设计出来的! 下面,说说补码的设计,然后以最简单的核心运算:加减乘为例,讨论一下补码运算特性。(注:本文数据如未作特殊说明,皆为二进制数据)。 1补码的设计 新的编码的设计目标是实现符号位和数值位一起参加运算。解决方案参考的是模运算,设计的主要任务是解
7、决负数的编码表示问题。 模运算:在一个模运算系统中,一个数与它除以“模”后得到的余数是等价的,“钟表”是一个典型的模运算系统。“模”是计量系统的计数范围,运算时只计量小于“模”的部分,多余部分被丢弃。 模运算特征:对于给定的模运算,减去一个数等价于加上这个数的补数,根据这一特征补码减法运算可转换为加法运算。 综上,新编码补码的定义为:首先符号位数字化(改“+”为二进制0),然后一个正数的补码不变化(符号位0加上真值数值位,和该数原码编码一样),一个负数的补码等于模与该数绝对值之差。 2补码加减法 加法运算器是一
8、个重要的基础的运算器单元。 补码加法运算规则:两个数的和的补码等于两个数分别取补后再相加的和,即:[A+B]补=[A]补+[B]补。7 补码减法运算规则:两个数的差的补码等于被减数取补后减去减数取负之后的补,即:[A―B]补=[A]补+[―B]补。这里[―B]补等于[B]补的各位(含符号位)取反、末位加1。 下
此文档下载收益归作者所有