第3章-通用数据处理指令习题答案
- 格式:doc
- 大小:82.04 KB
- 文档页数:12
修正值=)(4321l l l l ∆+∆+∆+∆- =)1.03.05.07.0(+-+-- =0.4)(m μ 测量误差: l δ=4321lim 2lim 2lim 2lim 2l l l l δδδδ+++±=2222)20.0()20.0()25.0()35.0(+++± =)(51.0m μ±3-2 为求长方体体积V ,直接测量其各边长为mm a 6.161=,mm 44.5b =,mm c 2.11=,已知测量的系统误差为mm a 2.1=∆,mm b 8.0-=∆,mm c 5.0=∆,测量的极限误差为mm a 8.0±=δ,mm b 5.0±=δ,mm c 5.0±=δ, 试求立方体的体积及其体积的极限误差。
abc V = ),,(c b a f V = 2.115.446.1610⨯⨯==abc V)(44.805413mm =体积V 系统误差V ∆为:c ab b ac a bc V ∆+∆+∆=∆)(74.2745)(744.274533mm mm ≈=立方体体积实际大小为:)(70.7779530mm V V V =∆-=222222lim )()()(c b a V cf b f a f δδδδ∂∂+∂∂+∂∂±= 222222)()()(c b a ab ac bc δδδ++±=)(11.37293mm ±=测量体积最后结果表示为:V V V V lim 0δ+∆-=3)11.372970.77795(mm ±=3—3 长方体的边长分别为α1,α2, α3测量时:①标准差均为σ;②标准差各为σ1、σ2、 σ3 。
试求体积的标准差。
解:长方体的体积计算公式为:321a a a V ⋅⋅= 体积的标准差应为:232322222121)()()(σσσσa V a V a V V ∂∂+∂∂+∂∂=现可求出:321a a a V ⋅=∂∂;312a a a V ⋅=∂∂;213a a a V⋅=∂∂ 若:σσσσ===321 则有:232221232322222121)()()()()()(a V a V a V a V a V a V V ∂∂+∂∂+∂∂=∂∂+∂∂+∂∂=σσσσσ221231232)()()(a a a a a a ++=σ若:321σσσ≠≠ 则有:232212223121232)()()(σσσσa a a a a a V ++=3-4 测量某电路的电流mA I 5.22=,电压V U 6.12=,测量的标准差分别为mA I 5.0=σ,V U 1.0=σ,求所耗功率UI P =及其标准差P σ。
第四版钱晓捷课后习题答案第四版钱晓捷课后习题答案《微机原理与接口技术》习题解答第1章微型计算机系统 (2)第2章处理器结构 (14)第3章数据处理 (29)第4章汇编语言程序设计 (52)第5章微机总线 (82)第6章存储系统 (96)第7章输入输出接口 (115)第8章常用接口技术 (137)第9章处理器性能提高技术 (160)第10章并行处理技术 (172)第1章微型计算机系统〔习题1.1〕简答题(1)计算机字长(Word)指的是什么?(2)总线信号分成哪三组信号?(3)PC机主存采用DRAM组成还是SRAM 组成?(4)Cache是什么意思?(5)ROM-BIOS是什么?(6)中断是什么?(7)32位PC机主板的芯片组是什么?(8)教材中MASM是指什么?(9)处理器的“取指-译码-执行周期”是指什么?(10)本课程的主要内容属于计算机系统层次结构中哪个层次?〔解答〕①处理器每个单位时间可以处理的二进制数据位数称计算机字长。
②总线信号分成三组,分别是数据总线、地址总线和控制总线。
③PC机主存采用DRAM组成。
-2-④高速缓冲存储器Cache是处理器与主存之间速度很快但容量较小的存储器。
⑤ROM-BIOS是“基本输入输出系统”,操作系统通过对BIOS的调用驱动各硬件设备,用户也可以在应用程序中调用BIOS中的许多功能。
⑥中断是CPU正常执行程序的流程被某种原因打断、并暂时停止,转向执行事先安排好的一段处理程序,待该处理程序结束后仍返回被中断的指令继续执行的过程。
⑦主板芯片组是主板的核心部件,它提供主板上的关键逻辑电路。
⑧MASM是微软开发的宏汇编程序。
⑨指令的处理过程。
处理器的“取指—译码—执行周期”是指处理器从主存储器读取指令(简称取指),翻译指令代码的功能(简称译码),然后执行指令所规定的操作(简称执行)的过程。
⑩机器语言层,即指令集结构。
(学生很多认为是:层。
前4章主要涉及汇编语言,但本书还有很多处理器原理等内容)〔习题1.2〕判断题(1)软件与硬件的等价性原理说明软硬件在-3-功能、性能和成本等方面是等价的。
第3章3.1:汇编语言有什么特点解:汇编语言是一种以处理器指令系统为基础的低级程序设计语言,它采用助记符表达指令操作码,采用标识符号表示指令操作数,可以直接、有效地控制计算机硬件,因而容易创建代码序列短小、运行快速的可执行程序3.2编写汇编语言源程序时,一般的组成原则是什么?解:(1)完整的汇编语言源程序由段组成(2)一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可随意排列(3)需独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点(4)所有的可执行性语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内(5)通常,程序还需要一个堆栈段3.3 MODEL伪指令是简化段定义源程序格式中必不可少的语句,它设计了哪7种存储模式?各用于创建什么性质的程序?解:3.4如何规定一个程序执行的开始位置,主程序执行结束应该如何返回DOS,源程序在何处停止汇编过程?解:开始位置:用标号指明返回DOS:利用DOS功能调用的4CH子功能来实现汇编停止:执行到一条END伪指令时,停止汇编3.5逻辑段具有哪些属性?解:段定位、段组合和段类型。
3.6给出采用一个源程序格式书写的例题3.1源程序例题3.1:创建一个在屏幕上显示一段信息的程序……解:stack segment stackdb 1024(0)stack endsdata segmentstring db 'Hello,Assembly!',0dH,0aH,‘$’data endscode segment 'code'assume cs:code,ds:data,ss:stackstart: mov dx,offset stringmov ah,9int 21hcode endsend start3.7DOS支持哪两种可执行程序结构,编写这两种程序时需要注意什么?解:(1). EXE程序程序可以有多个代码段和多个数据段,程序长度可以超过64KB通常生成EXE结构的可执行程序(2). COM程序只有一个逻辑段,程序长度不超过64KB需要满足一定条件才能生成COM结构的可执行程序(MASM 6.x需要采用TINY模式)3.8举例说明等价“EUQ”伪指令和等号“=”伪指令的用途解:符号定义伪指令有“等价EQU”和“等号=”:符号名 EQU 数值表达式符号名 EQU <字符串>符号名=数值表达式EQU用于数值等价时不能重复定义符号名,但“=”允许有重复赋值。
作者:旧在几作品编号:2254487796631145587263GF24000022 时间:2020.12.13第3章习题参考答案1、设有一个具有20位地址和32位字长的存储器,问 (1) 该存储器能存储多少字节的信息?(2) 如果存储器由512K ×8位SRAM 芯片组成,需要多少片? (3) 需要多少位地址作芯片选择? 解:(1) 该存储器能存储:字节4M 832220=⨯(2) 需要片8823228512322192020=⨯⨯=⨯⨯K (3) 用512K ⨯8位的芯片构成字长为32位的存储器,则需要每4片为一组进行字长的位数扩展,然后再由2组进行存储器容量的扩展。
所以只需一位最高位地址进行芯片选择。
2、已知某64位机主存采用半导体存储器,其地址码为26位,若使用4M ×8位的DRAM 芯片组成该机所允许的最大主存空间,并选用内存条结构形式,问; (1) 若每个内存条为16M ×64位,共需几个内存条? (2) 每个内存条内共有多少DRAM 芯片?(3) 主存共需多少DRAM 芯片? CPU 如何选择各内存条? 解:(1) 共需条4641664226=⨯⨯M 内存条 (2) 每个内存条内共有32846416=⨯⨯M M 个芯片(3) 主存共需多少1288464648464226=⨯⨯=⨯⨯M M M 个RAM 芯片, 共有4个内存条,故CPU 选择内存条用最高两位地址A 24和A 25通过2:4译码器实现;其余的24根地址线用于内存条内部单元的选择。
3、用16K ×8位的DRAM 芯片构成64K ×32位存储器,要求: (1) 画出该存储器的组成逻辑框图。
(2) 设存储器读/写周期为0.5μS ,CPU 在1μS 内至少要访问一次。
试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少? 解:(1) 用16K ×8位的DRAM 芯片构成64K ×32位存储器,需要用16448163264=⨯=⨯⨯K K 个芯片,其中每4片为一组构成16K ×32位——进行字长位数扩展(一组内的4个芯片只有数据信号线不互连——分别接D 0~D 7、D 8~D 15、D 16~D 23和D 24~D 31,其余同名引脚互连),需要低14位地址(A 0~A 13)作为模块内各个芯片的内部单元地址——分成行、列地址两次由A 0~A 6引脚输入;然后再由4组进行存储器容量扩展,用高两位地址A 14、A 15通过2:4译码器实现4组中选择一组。
第3章栈和队列一选择题1. 对于栈操作数据的原则是()。
【青岛大学2001 五、2(2分)】A. 先进先出B. 后进先出C. 后进后出D. 不分顺序2. 在作进栈运算时,应先判别栈是否( ①),在作退栈运算时应先判别栈是否( ②)。
当栈中元素为n个,作进栈运算时发生上溢,则说明该栈的最大容量为( ③)。
为了增加内存空间的利用率和减少溢出的可能性,由两个栈共享一片连续的内存空间时,应将两栈的( ④)分别设在这片内存空间的两端,这样,当( ⑤)时,才产生上溢。
①, ②: A. 空 B. 满 C. 上溢 D. 下溢③: A. n-1 B. n C. n+1 D. n/2④: A. 长度 B. 深度 C. 栈顶 D. 栈底⑤: A. 两个栈的栈顶同时到达栈空间的中心点.B. 其中一个栈的栈顶到达栈空间的中心点.C. 两个栈的栈顶在栈空间的某一位置相遇.D. 两个栈均不空,且一个栈的栈顶到达另一个栈的栈底.【上海海运学院1997 二、1(5分)】【上海海运学院1999 二、1(5分)】3. 一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是()。
A. 不确定B. n-i+1C. iD. n-i【中山大学1999 一、9(1分)】4. 若一个栈的输入序列为1,2,3,…,n,输出序列的第一个元素是i,则第j个输出元素是()。
A. i-j-1B. i-jC. j-i+1D. 不确定的【武汉大学2000 二、3】5. 若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,p N,若p N是n,则p i是( )。
A. iB. n-iC. n-i+1D. 不确定【南京理工大学2001 一、1(1.5分)】6. 有六个元素6,5,4,3,2,1 的顺序进栈,问下列哪一个不是合法的出栈序列?()A. 5 4 3 6 1 2B. 4 5 3 1 2 6C. 3 4 6 5 2 1D. 2 34 15 6【北方交通大学2001 一、3(2分)】7. 设栈的输入序列是1,2,3,4,则()不可能是其出栈序列。
第三章处理机调度与死锁1,高级调度与低级调度的主要任务是什么?为什么要引入中级调度?【解】(1)高级调度主要任务是用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程,分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。
(2)低级调度主要任务是决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。
(3)引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。
为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。
当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。
3、何谓作业、作业步和作业流?【解】作业包含通常的程序和数据,还配有作业说明书。
系统根据该说明书对程序的运行进行控制。
批处理系统中是以作业为基本单位从外存调入内存。
作业步是指每个作业运行期间都必须经过若干个相对独立相互关联的顺序加工的步骤。
作业流是指若干个作业进入系统后依次存放在外存上形成的输入作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。
4、在什么情冴下需要使用作业控制块JCB?其中包含了哪些内容?【解】每当作业进入系统时,系统便为每个作业建立一个作业控制块JCB,根据作业类型将它插入到相应的后备队列中。
JCB 包含的内容通常有:1) 作业标识2)用户名称3)用户账户4)作业类型(CPU 繁忙型、I/O芳名型、批量型、终端型)5)作业状态6)调度信息(优先级、作业已运行)7)资源要求8)进入系统时间9) 开始处理时间10) 作业完成时间11) 作业退出时间12) 资源使用情况等5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?【解】作业调度每次接纳进入内存的作业数,取决于多道程序度。
第3章习题解答1.指令长度和机器字长有什么关系?半字长指令、单字长指令、双字长指令分别表示什么意思?解:指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。
通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。
2.零地址指令的操作数来自哪里?一地址指令中,另一个操作数的地址通常可采用什么寻址方式获得?各举一例说明。
解:双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。
双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获得,即将另一操作数预先存放在累加器中。
例如,前述零地址和一地址的加法指令。
3.某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。
若双操作数指令已有K种,无操作数指令已有L种,问单操作数指令最多可能有多少种?上述三类指令各自允许的最大指令条数是多少?解:X= (24一K)×26一[L/26]双操作数指令的最大指令数:24一1。
单操作数指令的最大指令数:15×26一l(假设双操作数指令仅1条,为无操作数指令留出1个扩展窗口)。
无操作数指令的最大指令数:216一212一26。
其中212为表示某条二地址指令占用的编码数,26为表示某条单地址指令占用的编码数。
此时双操作数和单操作数指令各仅有1条。
4.设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案,使该指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。
解:4条三地址指令000 XXX YYY ZZZ..011 XXX YYY ZZZ8条二地址指令100 000 XXX YYY..100 111 XXX YYY180条单地址指令101 000 000 XXX..111 110 011 XXX5.指令格式同上题,能否构成:三地址指令4条,单地址指令255条,零地址指令64条?为什么?解:三地址指令4条000 XXX YYY ZZZ..011 XXX YYY ZZZ单地址指令255条100 000 000 XXX..111 111 110 YYY只能再扩展出零地址指令8条,所以不能构成这样的指令系统。
单片机微型计算机原理及接口技术课后习题答案3章3-1简述模型机的工作过程(就以书上举例,叙述过程,本题内容较多,明白道理即可,不需详细记住)计算机的指令执行过程分为读取指令→分析指令→执行指令→保存结果在进行计算前,应做如下工作:①用助记符号指令(汇编语言)编写程序(源程序)②用汇编软件(汇编程序)将源程序汇编成计算机能识别的机器语言程序③将数据和程序通过输入设备送入存储器中存放读取指令阶段(就以书上举例,理解过程即可):①CPU将程序计数器PC中的内容XXH送地址寄存器AR②程序计数器PC的内容自动加1,为取下一条指令做好准备③地址寄存器AR将XXH通过地址总线AB送至存储器地址译码器译码,选中XXH 单元。
④CPU发出“读”指令⑤所选中的XXH单元中的内容由存储器送至数据总线DB上⑥经数据总线DB,CPU将读出的XXH单元中的内容送至数据寄存器DR⑦数据寄存器DR将其送至指令寄存器IR,经过译码,CPU通过控制器发出执行该条指令的控制命令。
执行指令阶段(就以书上举例,理解过程即可)与读取类似(这里从略)3-2 STC15F2K60S2单片机的存储器分为哪几个空间?中断服务程序的入口地址分别是什么?32个通用寄存器各对应哪些RAM单元?STC15F2K60S2单片机的存储器分为四个空间,分别为程序Flash存储器,数据Flash 存储器,内部数据存储器和扩展数据存储器。
中断服务程序的入口地址分别为:0003H 外部中断0中断服务程序的入口地址000BH 定时/计数器0中断服务程序的入口地址0013H 外部中断1中断服务程序的入口地址001BH 定时/计数器1中断服务程序的入口地址0023H 串行通信口1中断服务程序的入口地址002BH ADC中断服务程序的入口地址0033H 低电压检测中断服务程序的入口地址003BH PCA中断服务程序的入口地址0043H 串行通信口2中断服务程序的入口地址004BH SPI中断服务程序的入口地址0053H 外部中断2中断服务程序的入口地址005BH 外部中断3中断服务程序的入口地址0063H 定时/计数器2中断服务程序的入口地址0083H 外部中断4中断服务程序的入口地址32个通用寄存器分为寄存器组0,1,2,3,每个组8个8位的工作寄存器(R0~R7),均存在于内部数据存储器的低128字节内,范围为00H-1FH寄存器组0 R0~R7对应00H-07H寄存器组1 R0~R7对应08H-0FH寄存器组2 R0~R7对应10H-17H寄存器组3 R0~R7对应18H-1FH3-3 位地址29H,61H,7FH,E0H,F1H,各对应哪些单元的哪些位?29H——RAM位寻址区字节地址25H,对应D1位61H——RAM位寻址区字节地址2CH,对应D1位7FH——RAM位寻址区字节地址2FH,对应D7位E0H——高128字节/特殊功能寄存器SFR区,寄存器ACC(字节地址E0H)的D0位;F1H——高128字节/SFR,寄存器B(字节地址F0H)的D1位。
中图版(2019)必修1《第三章数据处理与应用》2022年单元测试卷1. 下列关于数据备份的说法不正确的是( )A. 备份的副本应存储在与源文件同一路径下B. 备份文件有助于避免文件的永久丢失C. 可以用备份的文件恢复丢失的数据D. 为了确保文件不会丢失,可以随时手动备份或者设置自动备份2. 百度公司根据某时段在某区域内“感冒症状”、“治疗”等关键词的搜索量急剧增长,成功预测了甲流的爆发时间、地域。
主要体现了大数据分析理念中的( )A. 在数据规模上强调相对数据而不是绝对数据B. 在分析方法上更注重相关分析而不是因果分析C. 在数据基础上倾向于全体数据而不是抽样数据D. 在分析效果上更追求效率而不是绝对精确3. 下列不属于数据采集是( )A. 系统日志B. 网络爬虫C. 问卷调查D. 数据可视化4. 小明无意间发现了小红记录在笔记本上的邮箱密码,他登录小红邮箱后阅读了小红的各种邮件。
为此小红对邮箱设置进行了调整,现需要用手机接收“动态密码”并输入后才能登录邮箱。
请问小红的做法是属于以下哪种信息系统的安全防范方法?( )A. 身份认证B. 访问控制C. 数据加密D. 修补漏洞5. 下列关于数据安全的说法,不正确的是( )A. 自然灾害也有可能对数据造成损坏B. 数据加密有助于提高数据的安全性C. 数据校验主要是为了保证数据的完整性D. 数据安全只要做好防护上的安全即可6. 因疫情防控需要,学校要求学生家长及时上报体温、行程等数据,汇总后上报上级防控部门,采集上述数据最为高效的方法是( )A. 填写在线收集表B. 填写纸质表格C. 发送电子邮件D. 打电话上报7. 数据分析报告是项目的展示,也是数据分析结论的有效承载形式。
在数据分析报告中,首先需要明确数据分析的,阐述目前及通过分析希望解决的问题;其次需要描述数据来源和数据分析的、和;最后需要重点呈现数据分析的、和。
A. 正确B. 错误8. 数据分析应用对象主要有分析、分析和分析。
第1章绪论作业1. 将下列二进制数转换成十进制数。
(1)11001010B=202 (2)00111101B=61(3)01001101B=77 (4)10100100B=1643. 将下列十进制数分别转换为二进制数和十六进制数。
(2)76= 100 1100B =4CH(4)134= 1000 0110B =86H4. 求下列十进制数的BCD码(1)327=11 0010 0111(BCD码)(2)1256=1 0010 0101 0110(BCD码)6. 求出下列10进制数的原码、反码和补码(2)+85 (4)-85解:85=0101 0101B原码:+85= 0101 0101B -85= 1101 0101B反码:+85= 0101 0101B -85= 1010 1010B补码:+85= 0101 0101B -85= 1010 1011B10. 画出微型计算机的基本结构框图,说明各部分的主要功能是什么?解:微型计算机的基本结构框图如下:微处理器CPU:控制微处理器与存储器或I/O设备间的数据交换;进行算术和逻辑运算等操作;判定和控制程序流向。
微处理器主要完成:(1)指令控制:从存储器中取指令,指令译码;(2)数据加工:简单的算术逻辑运算;(3)操作控制:在微处理器和存储器或者I/O之间传送数据;(4)时间控制:程序流向控制。
存储器:用来存放数据和指令。
I/O接口:主机和外设间的桥梁,提供数据缓冲驱动、信号电平转换、信息转换、地址译码、定时控制等各种功能。
I/O设备:输入原始数据和程序,转换成计算机能识别的信息,送入存储器去等待处理。
输出运算结果。
总线:连接计算机系统中各功能部件的信息通道。
第2章 8086CPU作业2. 8086CPU内部由哪两部分组成?它们的大致是如何工作的?答:(1)8086CPU由指令执行部件EU和总线接口部件BIU两部分组成。
(2)①BIU先执行读存储器操作,从给定地址单元中取出指令,送到先进先出的指令队列中等待执行。
习题1.给出以下概念的解释说明。
机器语言程序机器指令汇编语言汇编指令汇编语言程序汇编助记符汇编程序反汇编程序机器级程序通用寄存器定点通用寄存器栈指针寄存器指令指针寄存器标志寄存器条件标志(条件码)控制标志寻址方式立即寻址寄存器寻址存储器操作数实地址模式保护模式比例变址非比例变址比例系数(比例因子)MMX指令SSE指令集SIMD 多媒体扩展通用寄存器栈(Stack)调用者保存寄存器被调用者保存寄存器帧指针寄存器当前栈帧按值传递参数按地址传递参数嵌套调用递归调用缓冲区溢出缓冲区溢出攻击栈随机化2.简单回答下列问题。
(1)一条机器指令通常由哪些字段组成?各字段的含义分别是什么?(2)将一个高级语言源程序转换成计算机能直接执行的机器代码通常需要哪几个步骤?(3)IA-32中的逻辑运算指令如何生成条件标志?移位指令可能会改变哪些条件标志?(4)执行条件转移指令时所用到的条件标志信息从何而来?请举例说明。
(5)无条件转移指令和调用指令的相同点和不同点是什么?(6)按值传递参数和按地址传递参数两种方式有哪些不同点?(7)为什么在递归深度较深时递归调用的时间开销和空间开销都会较大?(8)为什么数据在存储器中最好按地址对齐方式存放?(9)造成缓冲区溢出的根本原因是什么?3.对于以下AT&T格式汇编指令,根据操作数的长度确定对应指令助记符中的长度后缀,并说明每个操作数的寻址方式。
(1)mov 8(%ebp, %ebx, 4), %ax(2)mov %al, 12(%ebp)(3)add ( , %ebx,4), %ebx(4)or (%ebx), %dh(5)push $0xF8(6)mov $0xFFF0, %eax(7)test %cx, %cx(8)lea 8(%ebx, %esi), %eax4.使用汇编器处理以下各行AT&T格式代码时都会产生错误,请说明每一行存在什么错误。
(1)movl 0xFF, (%eax)(2)movb %ax, 12(%ebp)(3)addl %ecx, $0xF0(4)orw $0xFFFF0, (%ebx)(5)addb $0xF8, (%dl)(6)movl %bx, %eax(7)andl %esi, %esx(8)movw 8(%ebp, , 4), %ax5.假设变量x和ptr的类型声明如下:src_type x;dst_type *ptr;这里,src_type和dst_type是用typedef声明的数据类型。
计算机组成原理与汇编语言程序设计课后习题及解答徐洁,俸远祯电子工业出版社第1章习题一1.什么是程序存储工作方式?答:计算机的工作方式——存储程序工作方式。
即事先编写程序,再由计算机把这些信息存储起来,然后连续地、快速地执行程序,从而完成各种运算过程。
2.采用数字化方法表示信息有哪些优点?用数字化方法表示信息的优点:(1)抗干扰能力强, 可靠性高。
(2)依靠多位数字的组合,在表示数值时可获得很宽的表示范围以及很高的精度。
(3)数字化的信息可以存储、信息传送也比较容易实现。
(4)可表示的信息类型与范围及其广泛,几乎没有限制。
(5)能用逻辑代数等数字逻辑技术进行信息处理,这就形成了计算机硬件设计的基础。
3.如果有7×9点阵显示出字符A的图像,请用9个七位二进制代码表示A的点阵信息。
4.数字计算机的主要特点是什么?1. (1)能在程序控制下自动连续地工作;(2|)运算速度快;(3)运算精度高;(4)具有很强的信息存储能力;(5)通用性强,应用领域及其广泛。
5.衡量计算机性能的基本指标有哪些?答:衡量计算机性能的基本指标:(1)基本字长——参加一次运算的数的位数;(2)数据通路宽度——数据总线一次能并行传送的位数;(3)运算速度——可用①CPU的时钟频率与主频,②每秒平均执行指令数,③典型四则运算的时间来表示。
(4)主存储器容量——可用字节数或单元数(字数)×位数来表示。
(6)配备的外围设备及其性能。
(7)系统软件配置。
7.系统软件一般包括哪些部分?列举你所熟悉的三种系统软件。
系统软件一般包括操作系统,编译程序、解释程序、各种软件平台等。
例如WINDOWS98操作系统,C 语言编译程序等,数据库管理系统。
8.对源程序的处理有哪两种基本方式?对源程序的处理通常有两种处理方式:解释方式和编译方式。
第2章习题二1.将二进制数(101010.01)2 转换为十进制数及BCD码。
解:(101010.01)2 = (42.25)10 = (01000010.00100101)BCD2.将八进制数(37.2)8转换为十进制数及BCD码.解:(37.2)8 = (31.25)10 =(00110001.00100101)BCD3.将十六进制数(AC.E)转换为十进制数及BCD码.解: (AC.E)16 =(172.875)10 = (000101110010.100001110101)BCD4.将十进制数(75.34)10转换为8位二进制数及八进制数、十六进制数。
汇编语言程序设计第四版【课后习题答案】--囮裑為檤第3章汇编语言程序格式〔习题3.1〕伪指令语句与硬指令语句的本质区别是什么?伪指令有什么主要作用?〔解答〕伪指令语句与硬指令语句的本质区别是能不能产生CPU动作;伪指令的作用是完成对如存储模式、主存变量、子程序、宏及段定义等很多不产生CPU动作的说明,并在程序执行前由汇编程序完成处理。
〔习题3.2〕什么是标识符,汇编程序中标识符怎样组成?〔解答〕为了某种需要,每种程序语言都规定了在程序里如何描述名字,程序语言的名字通常被称为标识符;汇编语言中的标识符一般最多由31个字母、数字及规定的特殊符号(如-,$,?,@)组成,不能以数字开头。
〔习题3.3〕什么是保留字,汇编语言的保留字有哪些类型,并举例说明。
〔解答保留字是在每种语言中规定了有特殊意义和功能的不允许再做其它用处的字符串;汇编语言的保留字主要有硬指令助记、伪指令助记符、运算符、寄存器名以及预定义符号等。
汇编语言对大小写不敏感。
如定义字节数和字符串的DB就是伪指令助记符。
〔习题3.4〕汇编语句有哪两种,每个语句由哪4个部分组成?〔解答〕汇编语句有执行性语句和说明性语句;执行性语句由标号、硬指令助记符、操作数和注释四部分组成;说明性语句由名字、伪指令助记符、参数和注释四部分组成〔习题3.5〕汇编语言程序的开发有哪4个步骤,分别利用什么程序完成、产生什么输出文件。
〔解答〕⒈编辑文本编辑程序汇编语言源程序.asm⒉汇编汇编程序目标模块文件.obj⒊连接连接程序可执行文件.exe或.com⒋调试调试程序应用程序〔习题3.6〕区分下列概念:(1)变量和标号(2)数值表达式和地址表达式(3)符号常量和字符串常量〔解答〕(1)变量是在程序运行过程中,其值可以被改变的量;标号是由用户自定义的标识符,指向存储单元,表示其存储内容的逻辑地址。
(2)数值表达式一般是由运算符连接的各种常数所构成的表达式,地址表达式是由名字、标号以及利用各种的操作符形成的表达式。
第三章单选题1、下列选项中,若是哪个节点关闭了,就无法访问Hadoop集群()。
•A、namenode•B、datanode•C、secondary namenode•D、yarn参考答案:A答案解析:暂无解析2、下列说法中,关于客户端从HDFS中读取数据的说法错误的是()。
•A、客户端会选取排序靠前的DataNode来依次读取Block块•B、客户端会把最终读取出来所有的Block块合并成一个完整的最终文件•C、客户端会选取排序靠后的DataNode来依读取Block块•D、如果客户端本身就是DataNode,那么将从本地直接获取数据参考答案:C答案解析:暂无解析3、下列选项中,用于检验数据完整性的信息的是()。
•A、心跳机制•B、ACK机制•C、选举机制•D、垃圾回收机制参考答案:B答案解析:暂无解析4、下列选项中,关于HDFS说法错误的是()。
•A、HDFS是Hadoop的核心之一•B、HDFS源于Google的GFS论文•C、HDFS用于存储海量大数据•D、HDFS是用于计算海量大数据参考答案:D答案解析:暂无解析5、下列选项中,用于存放部署Hadoop集群服务器的是()。
•A、namenode•B、datanode•C、rack•D、metadata参考答案:C答案解析:Rack是用来存放部署Hadoop集群服务器的机架。
6、下列选项中,用于删除HDFS上文件夹的方法是()。
•A、delete()•B、rename()•C、mkdirs()•D、copyToLocalFile()参考答案:A答案解析:FileSystem对象调用delete()方法可以删除文件夹,delete()方法接收两个参数,第一个参数表示要删除的文件夹路径,第二个参数用于设置是否递归删除目录。
7、下列选项中,关于HDFS的架构说法正确的是()。
•A、HDFS采用的是主备架构•B、HDFS采用的是主从架构•C、HDFS采用的是从备架构•D、以上说法均错误参考答案:B答案解析:HDFS采用主从架构(Master/Slave架构)。
第三章通用数据处理指令3.1 简答题(1)如何修改“MOV ESI, WORD PTR 250”语句使其正确?删除“WORD PTR”即可(2)为什么说“XCHG EDX,CX”是一条错误的指令?源、目标寄存器位数不同,不能用该指令进行数据交换(3)说IA-32处理器的堆栈“向下生长”是什么意思?入栈时堆栈指针寄存器做减法操作,指向低地址;出栈时堆栈指针寄存器做加法操作,指向高地址(4)都是获取偏移地址,为什么指令“LEA EBX,[ESI]”正确,而指令“mov ebx,offset [ESI]”就错误?LEA指令时运行时计算地址,OFFSET是汇编时取地址。
(5)执行了一条加法指令后,发现ZF=1,说明结果是什么?表明运算结果为0(6)INC、DEC、NEG和NOT都是单操作数指令,这个操作数应该是源操作数还是目的操作数?既是源操作数,也是目的操作数(7)大小写字母转换使用了什么规律?大小写字母转换利用它们的ASCII码相差20H(9)除法指令“DIV ESI”的被除数是什么?被除数64位,在EDX和EAX中,EDX保存高32位、EAX保存低32位(10)逻辑与运算为什么也称为逻辑乘?运算规则类似于2进制乘法。
3.2 判断题(1)指令“MOV EAX,0”使EAX结果为0,所以标志ZF=1。
错,MOV指令不影响标志(2)空操作NOP指令其实根本没有指令。
错,(3)堆栈的操作原则是“先进后出”,所以堆栈段的数据除了PUSH和POP指令外,不允许其他方式读写。
错(4)虽然ADD指令和SUB指令执行后会影响标志状态,但执行前的标志并不影响它们的执行结果。
对(5)80减90(80-90)需要借位,所以执行结束后,进位标志CF=1。
对,减法时借位也用CF标志反映(6)指令“INC ECX”和“ADD ECX,1”实现的功能完全一样,可以互相替换。
错,INC 不影响CF位。
(7)无符号数在前面加零扩展,数值不变;有符号数前面进行符号扩展,位数加长一位、数值增加一倍。
错,符号扩展也不改变数值大小(8)CMP 指令是目的操作数减去源操作数,与SUB指令功能相同错(9)逻辑运算没有进位或溢出问题,此时CF和OF没有作用,所以逻辑运算指令将CF和OF设置为0错(10)SHL指令左移一位,就是乘10。
错,左移一位,相当于乘2。
这里的位是二进制比特位3.3 填空题(1)指令“PUSH DS”执行后,ESP会 ____________.减 2(2)指令“POP EDX”的功能也可以用MOV和ADD指令实现,依次应该是__________和__________指令。
MOV EDX,[ESP],ADD ESP,4(3)例子3-3 的TAB定义如果是1234567890,则显示结果是 _______________ 78894111(4)进行8位二进制数加法:BAH+6CH,8位结果是__________,标志PF=__________。
如果进行16位二进制数加法:45BAH+786CH,16位结果是__________,标志PF=__________。
26H,0,BE26H,0(5)已知AX=98H,执行“NEG AX”指令后,AX=____,标志SF=___。
68H,0(6)假设CL=98H,执行“MOVZX DX,CL”后,DX = ______,这称为__________。
0098h,零位(7)假设CL=98H,执行“MOVSX DX,CL”后,DX = ______,这称为__________。
ff98h,符号(8)指令“XOR EAX, EAX”和“SUB EAX, EAX”执行后,EAX=___,CF=OF=___。
而指令“MOV EAX, 0”执行后,EAX=___,CF和OF没有变化。
0,0,0(9)例子3-9 的程序执行结束后,变量qvar的内容是_______0123456788765432(10)欲将EDX内的无符号数除以16,使用指令“SHR EDX, ____”,其中后一个操作数是一个立即数。
4习题3.4请给每种组合各举一个实例(1)mov reg, imm(2)mov mem, imm(3)mov reg, reg(4)mov mem, reg(5)mov seg, reg(6)mov reg, mem(7)mov seg, mem(8)mov reg, seg(9)mov mem, seg习题3.5操作数的组合通常符合逻辑,但是不能任意,指出下列指令的错误原因(1) mov ecx,dl 位数不同(2)mov eip,ax eip为专用寄存器(3)mov es,1234h 段寄存器不能直接用imm赋值(4)mov es,ds 段寄存器间不能相互赋值(5)mov al,300h 位数不同(6)mov [esi],45h 类型不明确(7)mov eax,ebx+edi 无该种寻址方式(8) mov 20h,al 立即数不能做操作数习题3.6使用MOV指令实现交换指令“XCHG EBX,[EDI]”功能。
解答:mov eax,ebxmov ebx,[edi]mov [edi],eax习题3.7什么是堆栈,它的工作原则是什么,它的基本操作有哪两个,对应指令是什么。
主存储器中的以“先进后出”规则访问的内存区,入栈、出栈,push ,pop习题3.11执行如下程序片断,说明每条指令的执行结果(1)mov eax,80hadd eax,3add eax,80hadc eax,3(2)mov eax,100add ax,200(3)mov eax,100add al,200(包含256的进位含义:256+44=300)(4)mov al,7fhsub al,8sub al,80hsbb al,3解答:(1)mov eax,80h ;EAX=80Hadd eax,3 ;EAX=83H,CF=0,SF=0add eax,80h ;EAX=103H,CF=0,OF=0adc eax,3 ;EAX=106H,CF=0,ZF=0(2)mov eax,100 ;EAX=100(64H)add ax,200 ;EAX=300(12CH),CF=0(3)mov eax,100 ;EAX=100(64H)add al,200 ;EAX=44(2CH),CF=1(包含256的进位含义:256+44=300)(4)mov al,7fh ;AL=7FHsub al,8 ;AL=77H,CF=0,SF=0sub al,80h ;AL=F7H,CF=1,OF=1sbb al,3 ;AL=F3H,CF=0,ZF=0习题3.12给出下列各条指令执行后al的值,以及CF、ZF、SF、OF和PF的状态。
Mov al,89hAdd al,alAdd al,9dhCmp al,0bchSub al,alDec alInc al解答:Mov al,89h ;89h,不影响标志位Add al,al ;12h,cf=1,zf=0,sf=0,of=1,pf=1Add al,9dh ;0afh,cf=0,zf=0,sf=1,of=0,pf=1Cmp al,0bch ;0afh,cf=1,zf=0,sf=1,of=0,pf=1Sub al,al ;0,cf=0,zf=1,sf=0,of=0,pf=1Dec al ;ffh,cf=0,zf=0,sf=1,of=0,pf=1Inc al ;0h,cf=0,zf=1,sf=0,of=0,pf=1习题3.13如下两段程序执行后,EDX.EAX寄存器对的值各是多少?(1)加法程序Mov edx,11hMov eax,0b0000000hAdd eax,040000000hAdc edx,0(2)减法程序Mov edx,100hMov eax,64000000hSub eax,84000000hSbb edx,0解答:(1)EDX=11EAX=0f0000000h(2)0ffh,0e00000000h习题3.14请分别用一条汇编语言指令完成如下功能:(1)把EBX寄存器和EDX寄存器的内容相加,结果存入EDX寄存器。
(2)用寄存器EBX和ESI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加,并把结果送到AL中。
(3)用EBX和位移量0B2H的寄存器相对寻址方式把存储器中的一个双字和ECX寄存器的内容相加,并把结果送回存储器中。
(4)将32位变量VARD与数3412H相加,并把结果送回该存储单元中。
(5)把数0A0H与EAX寄存器的内容相加,并把结果送回EAX中。
解答:(1)把EBX寄存器和EDX寄存器的内容相加,结果存入EDX寄存器。
add edx,ebx(2)用寄存器EBX和ESI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加,并把结果送到AL中。
add al,[ebx+esi](3)用EBX和位移量0B2H的寄存器相对寻址方式把存储器中的一个双字和ECX寄存器的内容相加,并把结果送回存储器中。
add [bx+0b2h],cx(4)将32位变量VARD与数3412H相加,并把结果送回该存储单元中。
add varw,3412h(5)把数0A0H与EAX寄存器的内容相加,并把结果送回EAX中。
add eax,0a0h习题3.15有两个64位无符号整数分别存放在变量buffer1和buffer2中,定义数据并编写代码完成edx.eax<- buufer1 - buffer2的功能。
解答:.dataBuffer1 qword ?Buffer2 qword ?.codeMov eax,dword ptr buffer1Mov edx,dword ptr buffer2 + 4Add eax,dword ptr buffer2Adc edx,dword ptr buffer2 + 4习题3.16执行如下程序片断,说明每条指令的执行结果(1)mov esi,10011100b ;ESI= _____Hand esi,80h ;ESI= _____Hor esi,7fh ;ESI= _____Hxor esi,0feh ;ESI= _____H(2)mov eax,1010b ;EAX= _____B(可有前导0)shr eax,2 ;EAX= _____B,CF=___shl eax,1 ;EAX= _____B,CF=___and eax,3 ;EAX= _____B,CF=___(3)mov eax,1011b ;EAX= ______B(可有前导0)rol eax,2 ;EAX= ______B,CF=_____rcr eax,1 ;EAX= ______B,CF=_____or eax,3 ;EAX= ______B,CF=_____(4)xor eax,eax ;EAX=____,CF=____,OF=____;ZF=_____,SF=_____,PF=___解答:(1)mov esi,10011100b ;ESI= 9CHand esi,80h ;ESI= 80Hor esi,7fh ;ESI= FFHxor esi,0feh ;ESI= 01H(2)mov eax,1010b ;EAX= 1010B(可有前导0)shr eax,2 ;EAX= 0010B,CF=1shl eax,1 ;EAX= 0100B,CF=0and eax,3 ;EAX= 0000B,CF=0(3)mov eax,1011b ;EAX= 1011B(可有前导0)rol eax,2 ;EAX= 101100B,CF=0rcr eax,1 ;EAX= 10110B,CF=0or eax,3 ;EAX= 10111B,CF=0(4)xor eax,eax ;EAX=0,CF=0,OF=0;ZF=1,SF=0,PF=1习题3.17给出下列各条指令执行后ax的结果,以及状态标志CF、OF、SF、ZF、PF的状态。