嵌入式SQL习题答案
9.3.1 a) void closestMatchPC()
{ EXEC SQL BEGIN DECLARE SECTION;
char manf[], SQLSTATE[6]; int targetPrice, float tempSpeed, speedOfClosest;
char tempModel[4], modelOfClosest[4]; int tempPrice,
priceOfClosest;
EXEC SQL END DECLARE SECTION;
EXEC SQL DECLARE pcCursor CURSOR FOR
SELECT model, price, speed FROM PC;
EXEC SQL OPEN pcCursor;
EXEC SQL FETCH FROM pcCursor
INTO :modelOfClosest, :priceOfClosest, :speedOfClosest;
if(NOT_FOUND) /* print message and exit */ ;
while(1)
{ EXEC SQL FETCH pcCursor INTO :tempModel, :tempPrice, :tempSpeed; if (NOT_FOUND) break;
if(|tempPrice-targetPrice|<|priceOfClosest-targetPrice|)
{ modelOfClosest = tempModel;
priceOfClosest = tempPrice;
speedOfClosest = tempSpeed;
}
}
EXEC SQL SELECT maker INTO :manf
FROM Product
WHERE model = :modelOfClosest;
printf("manf=%s, model=%d, speed=%d\n", manf, modelOfClosest, speedOfClosest);
EXEC SQL CLOSE CURSOR pcCursor;
}
d)void withinBudget()
{ EXEC SQL BEGIN DECLARE SECTION;
int total_budget, rest_budget, pc_price, printer_price;
char pc_model[4], printer_model[4], color[6];float min_speed; EXEC SQL END DECLARE SECTION;
EXEC SQL PREPARE query1 FROM
…SELECT model, price FROM PC
WHERE speed >= ? AND price <= ?
ORDER BY price?;
EXEC SQL PREPARE query2 FROM
…SELECT model, price FROM Printer
WHERE price <= ? AND color = ?
ORDER BY price?;
EXEC SQL DECLARE cursor1 CURSOR FOR query1;
EXEC SQL DECLARE cursor2 CURSOR FOR query2;
/* ask user for budget & the minimum speed of pc */
/* get the cheapest PC of the minimum speed */
EXEC SQL OPEN cursor1 USING :min_speed, :total_budget;
EXEC SQL FETCH cursor1 INTO :pc_model, :pc_price;
if (NOT_FOUND)
Printf(“no pc found within the budg et\n”);
else
{ P rintf(“pc model: %s\n”, pc_model);
}
/* get Printer within the budget */
rest_budget = total_budget – pc_price;
color = “true”;
EXEC SQL OPEN cursor2 USING :rest_budget, :color;
EXEC SQL FETCH cursor2 INTO :printer_model;
if(NOT_FOUND) {
EXEC SQL CLOSE CURSOR cursor2;
color = “false”;
EXEC SQL OPEN cursor2 USING :rest_budget, :color;
if(NOT_FOUND)
printf(“no printer found within the budget\n”);
else { EXEC SQL FETCH cursor2 INTO :printer_model;
printf(“printer model: %s\n”, printer_model);
}
}
else {p rintf(“printer model: %s\n”, printer_model); }
EXEC SQL CLOSE CURSOR cursor1;
EXEC SQL CLOSE CURSOR cursor2;
}
(f) void lowerPrices()
{ EXEC SQL BEGIN DECLARE SECTION;
char SQLSTATE[6];
EXEC SQL END DECLARE SECTION;
EXEC SQL DECLARE PCCursor INSENSITIVE CURSOR FOR PC;
EXEC SQL OPEN PCCursor;
while(1){
EXEC SQL FETCH FROM PCCursor;
if(NO_MORE_TUPLES) break;
EXEC SQL UPDATE PC
SET price=price-100
WHERE CURRENT OF PCCursor;
}
EXEC SQL CLOSE PCCursor;
}
7.1.3 void twoMoreExpensive(){
EXEC SQL BEGIN DECLARE SECTION;
char SQLSTATE[6],cd[5],cd1[5];
int model, model1,speed, speed1, ram, ram1, price, price1;
float hd, hd1;
EXEC SQL END DECLARE SECTION;
EXEC SQL DECLARE PCCursor SCROLL CURSOR FOR
SELECT * FROM PC ORDER BY speed, price;
EXEC SQL OPEN PCCursor;
while(1){
EXEC SQL FETCH NEXT FROM PCCursor
INTO:model, :speed, :ram, :hd,:cd,:price;
if(NO_MORE_TUPLES) break;
EXEC SQL FETCH RELATIVE +2 FROM PCCursor
INTO :model1,speed1,:ram1,:hd1,:cd1,:price1;
if(NO_MORE_TUPLES) break;
if(speed==speed1)
EXEC SQL FETCH RELATIVE -2 FROM PCCursor
INTO :model1, :speed1, :ram1, :hd1, :cd1, :price1;
printf(“model=%d, speed=%d, ram1=%d, cd1=%s, price=%d\n”,model1, speed1, ram1,hd1,cd1,price1);
}
EXEC SQL CLOSE PCCursor;
}
a) CREATE FUNCTION PresNetWorth(studioName CHAR[15]) RETURNS INTEGER
DECLARE presNetWorth INT;
BEGIN
SELECT netWorth
INTO presNetWorth
FROM Studio, MovieExec
WHERE https://www.360docs.net/doc/0f11167343.html, = studioName AND presC# = cert#;
RETURN(presNetWorth);
END;
c) CREATE PROCEDURE twoLongest(
IN studio CHAR(15),
OUT longest VARCHAR(255),
OUT second VARCHAR(255)
)
DECLARE t VARCHAR(255);
DECLARE i INT;
DECLARE Not_Found CONDITION FOR SQLSTATE = '02000';
DECLARE MovieCursor CURSOR FOR
SELECT title FROM Movies WHERE studioName = studio
ORDER BY length DESC;
BEGIN
SET longest = NULL;
SET second = NULL;
OPEN MovieCursor;
SET i = 0;
mainLoop: WHILE (i < 2) DO
FETCH MovieCursor INTO t;
IF Not_Found THEN LEAVE mainLoop END IF;
SET i = i + 1;
END WHILE;
CLOSE MovieCursor;
END;
d) CREATE PROCEDURE earliest120mMovie(
IN star CHAR(30),
OUT earliestYear INT
)
DECLARE Not_Found CONDITION FOR SQLSTATE = '02000';
DECLARE MovieCursor CURSOR FOR
SELECT MIN(year) FROM Movies
WHERE length > 120 AND
title IN (SELECT movieTitle FROM StarsIn
WHERE starName = star);
SET earliestYear = 0;
OPEN MovieCursor;
FETCH MovieCursor INTO earliestYear; CLOSE MovieCursor;
END;
嵌入式习题答案
嵌入式习题答案Last revision on 21 December 2020
第一章习题答案 1.什么是嵌入式系统请列举几个常见的嵌入式系统。 答:根据国际电气和电子工程师协会(IEEE)的定义,嵌入式系统是控制、监视或者辅助设备、机器和生产线运行的装置(Devices used to control, monitor, or assist the operation of equipment, machinery or plants)。这主要是从产品的应用角度加以定义的,由此可以看出嵌入式系统是软件和硬件的综合体,可以涵盖机械等附属装置。 目前被我国科学家普遍认同的定义是:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁减,对功能、可靠性、成本、体积、功耗要求严格的专用计算机系统。 常见的嵌入式系统:手机,DVD,路由器,核磁共振仪,全自动洗衣机。 2.嵌入式系统与通用计算机有哪些区别 答:(1) 以应用为中心;(2) 以计算机技术为基础(3) 软件和硬件可裁减(4) 对系统性能要求严格(5)软件的固件化(6)需要专用的开发工具 3.嵌入式系统的发展分为哪几个阶段 答:第一阶段:无操作系统的嵌入算法阶段。第二阶段:以嵌入式CPU为基础,以简单操作系统为核心的嵌入式系统。第三阶段:以嵌入式操作系统为标志的嵌入式系统。第四阶段:以基于Internet为标志的嵌入式系统。 4.请列举嵌入式系统的主要应用领域。 答:(1)工业控制领域(2)交通运输领域(3)消费电子产品(4)家电领域(5)通信领域(6)商业和金融领域(7)环境监测领域(8)医疗领域(9)建筑领域(10)军事国防领域(11)航天航空领域
嵌入式实验报告
嵌入式技术 实验报告 系别:计算机与科学技术系 班级:计12-1班 姓名:刘杰 学号:12101020128 总成绩: 评语: 日期:
2.在弹出的对话框中依次选择“cedevice emulator emulator kdstub”。 3.选择“Build OS”菜单的“sysgen”开始构建平台。 1.1.4连接,下载和运行平台 1.选择“Target”菜单下的“Connection option”菜单项。 2.在新的对话框中,配置连接关系 3.选择“Target”菜单下的“attach”菜单项,开始下载。 ?实验结果 操作系统定制成功,能正常运行。 ?结果截图 ?问题总结 由于对实验平台了解不够,致使操作过程中添加和删除组件时不知道该如何下手,影响整个实验进度。 实验1.2: 1.打开Platform Builder,并且打开实验1的工程,在实验1的工程基础上做本实验。
进程显示 IE信息查看
报文监测 实验1.3使用Platform Builder开发应用程序 简单实验步骤 1.打开Platform Builder。 2.选择“File”菜单下的“Open Workspace…”,然后打开实验1中创建的平台,本实验要基于 上面的实验的基础上做。 3.选择“File”菜单下的“New Project or File…”,打开“New Project or File”对话框。 4.在“Projects”选项页中选择“WCE Application”;在“Project Name”中输入项目的名字,例 如“MyApp”。 5.在“New Project Wizard – step 1 of 1”中选择“A typical Hello World Application”,点击“Finish” 按钮。 6.选择“Build”菜单中的“Build MyApp.exe”来编译应用程序。
嵌入式系统设计题库
一、单项选择题 1、在CPU和物理内存之间进行地址转换时,(B )将地址从虚拟(逻辑)地址空间映射到物理地址空间。 A.TCB B.MMU C.CACHE D.DMA 2、进程有三种状态:(C )。 A.准备态、执行态和退出态B.精确态、模糊态和随机态 C.运行态、就绪态和等待态D.手工态、自动态和自由态 3、以下叙述中正确的是(C )。 A.宿主机与目标机之间只需要建立逻辑连接即可 B.在嵌入式系统中,调试器与被调试程序一般位于同一台机器上 C.在嵌入式系统开发中,通常采用的是交叉编译器 D.宿主机与目标机之间的通信方式只有串口和并口两种 4、中断向量是指(C )。 A.中断断点的地址B.中断向量表起始地址 C.中断处理程序入口地址D.中断返回地址 5、在微型计算机中,采用中断方式的优点之一是(C )。 A.简单且容易实现B.CPU可以不工作 C.可实时响应突发事件D.传送速度最快 6、在ARM处理器中,(A )寄存器包括全局的中断禁止位,控制中断禁止位就可以打开或者关闭中断。 A.CPSR B.SPSR C.PC D.IR 7、嵌入式系统的三要素下面哪一个不是:(B )。 A、嵌入 B、存储器 C、专用 D、计算机 8、若R1=2000H,(2000H)=0x28,(2008H)=0x87,则执行指令LDR R0,[R1,#8]!后R0的值为()。 A、0x2000 B、0x28 C、0x2008 D、0x87 9、μCOS-II操作系统属于(B )。 A、顺序执行系统 B、占先式实时操作系统 C、非占先式实时操作系统 D、分时操作系统 10、ARM寄存器组有( C )个状态寄存器。 A、7 B、32 C、6 D、37 11、C++源程序文件的默认扩展名为(A )。 A、cpp B、exe C、obj D、lik 12、与十进制数254等值的二进制数是(A )。 A、B、 C、D、
嵌入式复习思考题(1)答案
嵌入式复习思考题及答案(1) 一、简答题 1、ARM9有哪几种工作模式?其中哪几种属于特权模式?哪几种属于几种异常模式? 答:有用户、系统、管理、中止、未定义、普通中断、快速中断。系统、管理、中止、未定义、普通中断、快速中断属于特权模式。管理、中止、未定义、普通中断、快速中断属于几种异常模式。 2、ARM9有哪2种工作状态?各自特点?实现状态切换指令的是什么? 答:ARM状态与Thumb状态。ARM状态指令是32位;Thumb状态指令是16位。切换指令是BX。 3、简述ARM9在不同工作模式下寄存器分布情况(用图表说明)。R13、R1 4、R15的固定用途;CPRS和SPRS名称及功能。 答:R13常作为堆栈指针SP、R14作为链接寄存器LR、R15作为程序计数器PC。CPRS是当前程序状态寄存器,包含条件代码、中断禁止位、当前处理器模式以及其他状态和控制信息。SPRS是程序状态保存寄存器,异常出现时用于保存CPRS的状态。 4 5 答:响应过程:1、将引起异常指令的下一条指令的地址保存到新的异常工作模式的R14中; 2、将CPSR的内容保存到将要执行的异常中断对应的SPSR中; 3、根据异常类型CPSR中的运行模式位; 4、将相应的矢量地址赋值给PC,开始执行异常处理程序。还可设中断禁止位。 返回过程: 1、将连接寄存器LR的值减去相应的偏移量后送到PC中; 2、将SPSR内容送回CPSR; 3、若在进入异常处理时设置了中断禁止位,要在此清除。 6、写出ARM9支持的寻址方式,各举一例。 答:略 7、写出指令LDRB/LDRH/LDR的区别。 答:LDRB将内存单元一个字节的数据扩展到32位装载到寄存器; LDRH将内存单元半字(两个字节)的数据扩展到32位装载到寄存器; LDR 将内存单元一个字的数据装载到寄存器。 8、写出LDM、STM指令用于数据块拷贝时对应的4种后缀以及用于堆栈操作对应的4种后缀。 解释各自的执行过程。 答:数据块拷贝后缀:IA操作后指针增;DA操作后指针减; IB操作前指针增;DB操作前指针减。 堆栈操作后缀:FD满递减;ED空递减;FA满递增;EA空递增。 9、ARM和Thumb两种状态下各自堆栈的生成方式有何不同?写出各自对应的入栈、出栈指令。答:ARM堆栈有4种生成方式满递增、满递减、空递增、空递减; 入栈指令:STM(FD\ED\FA\EA 4种后缀之一)出栈指令:LDM(FD\ED\FA\EA 4种后缀之一)Thumb堆栈采用满递减的生成方式。入栈指令:PUSH . 出栈指令:POP 10、写出条件代码NE、EQ的判断条件。 答:NE Z=0 (不相等);EQ Z=1 (相等) 11、B、BL及BX指令有何区别?写出无嵌套的子程序调用及返回指令。 答:B是简单的转移指令,实现向目的地址的简单的跳转;
嵌入式SQL习题答案
9.3.1 a) void closestMatchPC() { EXEC SQL BEGIN DECLARE SECTION; char manf[], SQLSTATE[6]; int targetPrice, float tempSpeed, speedOfClosest; char tempModel[4], modelOfClosest[4]; int tempPrice, priceOfClosest; EXEC SQL END DECLARE SECTION; EXEC SQL DECLARE pcCursor CURSOR FOR SELECT model, price, speed FROM PC; EXEC SQL OPEN pcCursor; EXEC SQL FETCH FROM pcCursor INTO :modelOfClosest, :priceOfClosest, :speedOfClosest; if(NOT_FOUND) /* print message and exit */ ; while(1) { EXEC SQL FETCH pcCursor INTO :tempModel, :tempPrice, :tempSpeed; if (NOT_FOUND) break; if(|tempPrice-targetPrice|<|priceOfClosest-targetPrice|) { modelOfClosest = tempModel; priceOfClosest = tempPrice; speedOfClosest = tempSpeed; } } EXEC SQL SELECT maker INTO :manf FROM Product WHERE model = :modelOfClosest; printf("manf=%s, model=%d, speed=%d\n", manf, modelOfClosest, speedOfClosest); EXEC SQL CLOSE CURSOR pcCursor; }
嵌入式实验报告心得
嵌入式实验报告心得 篇一:嵌入式系统原理实验总结报告 嵌入式系统原理实验总结报告 车辆座椅控制系统实验 XX/5/23 嵌入式系统原理实验总结报告 一、技术性总结报告 (一)题目:车辆座椅控制系统实验(二)项目概述: 1.为了实现车辆座椅控制的自动化与智能化。 2.方便用户通过智能手机与车载传感器之间的联动。 3.使车辆作为当今物联网中重要的一个节点发挥作用。 4.通过车辆座椅控制系统实验实现对嵌入式系统原理课程的熟练掌握与对嵌入式系统原理知识的深化记忆。 5. 加强本组学生对嵌入式系统原理的更深层次的理解与运用。 (三)技术方案及原理 本次试验分为软件、硬件两个部分。 1.软件部分。 A.智能手机部分,包括通过智能手机对座椅的控制部分、手机所携带的身份信息部分。 本部分软件使用Java编写,其程序部分为:主程序:package ;
import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ;import ; import ; import ; public class MainActivity extends ActionBarActivity { private Button Up = null; private Button Left = null; private Button Dowm = null; private Button Right = null; private Socket socket = null; private static final String HOST = "";private static final int PORT = 10007; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(; initControl();} private void initControl() {
嵌入式系统设计师练习题及答案解析
嵌入式系统设计师练习题及答案第一套 (1) 嵌入式系统设计师练习题及答案第二套 (5) 嵌入式系统设计师练习题及答案第三套 (16) 嵌入式系统设计师练习题及答案解析第四套 (27) 嵌入式系统设计师练习题及答案解析第五套 (45) 嵌入式系统设计师练习题及答案解析第六套 (59) 嵌入式系统设计师练习题及答案解析第七套 (67) 嵌入式系统设计师练习题及答案解析第八套 (75) 嵌入式系统设计师练习题及答案解析第九套 (81) 嵌入式系统设计师练习题及答案解析第十套 (90) 嵌入式系统设计师练习题及答案解析第十一套 (99) 嵌入式系统设计师练习题及答案解析第十二套 (106) 嵌入式系统设计师练习题及答案解析第十三套 (115) 嵌入式系统设计师练习题及答案解析第十四套 (126) 嵌入式系统设计师练习题及答案解析第十五套 (139) 嵌入式系统设计师练习题及答案解析第十六套 (154) 嵌入式系统设计师练习题及答案解析第十七套 (161) 嵌入式系统设计师练习题及答案解析第十八套 (169) 嵌入式系统设计师练习题及答案解析第十九套 (177) 嵌入式系统设计师练习题及答案解析第二十套 (189) 嵌入式系统设计师练习题及答案解析第二十一套 (199) 嵌入式系统设计师练习题及答案解析第二十二套 (212) 嵌入式系统设计师练习题及答案第一套 1、以下关于CPU的叙述中,错误的是 A.CPU产生每条指令的操作信号并将操作信号送往相应的部件进行控制
B.程序计数器PC除了存放指令地址,也可以临时存储算术/逻辑运算结果 C.CPU中的控制器决定计算机运行过程的自动化 D.指令译码器是CPU控制器中的部件 2、以下关于Cache的叙述中,正确的是 A.在容量确定的情况下,替换算法的时间复杂度是影响Cache命中率的关键因素 B.Cache的设计思想是在合理成本下提高命中率 C.Cache的设计目标是容量尽可能与主存容量相等 D.CPU中的Cache容量应大于cPu之外的Cache容量 3、风险预测从两个方面评估风险,即风险发生的可能性以及 A.风险产生的原因 B.风险监控技术 C.风险能否消除 D.风险发生所产生的后果 4、许多程序设计语言规定,程序中的数据都必须具有类型,其作用不包括 A.便于为数据合理分配存储单元 B.便于对参与表达式计算的数据对象进行检查 C.便于定义动态数据结构 D.使于规定数据对象的取值范围及能够进行的运算 5、在计算机系统中,对程序员是透明的。 A.磁盘存储器 B.高速缓存 C.RAM存储器 D.flash存储器
嵌入式习题答案
第一章习题答案 1.什么是嵌入式系统?请列举几个常见的嵌入式系统。 答:根据国际电气和电子工程师协会(IEEE)的定义,嵌入式系统是控制、监视或者辅助设备、机器和生产线运行的装置(Devices used to control, monitor, or assist the operation of equipment, machinery or plants)。这主要是从产品的应用角度加以定义的,由此可以看出嵌入式系统是软件和硬件的综合体,可以涵盖机械等附属装置。 目前被我国科学家普遍认同的定义是:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁减,对功能、可靠性、成本、体积、功耗要求严格的专用计算机系统。 常见的嵌入式系统:手机,DVD,路由器,核磁共振仪,全自动洗衣机。 2.嵌入式系统与通用计算机有哪些区别? 答:(1) 以应用为中心;(2) 以计算机技术为基础(3) 软件和硬件可裁减(4) 对系统性能要求严格(5)软件的固件化(6)需要专用的开发工具 3.嵌入式系统的发展分为哪几个阶段? 答:第一阶段:无操作系统的嵌入算法阶段。第二阶段:以嵌入式CPU为基础,以简单操作系统为核心的嵌入式系统。第三阶段:以嵌入式操作系统为标志的嵌入式系统。第四阶段:以基于Internet 为标志的嵌入式系统。 4.请列举嵌入式系统的主要应用领域。 答:(1)工业控制领域(2)交通运输领域(3)消费电子产品(4)家电领域(5)通信领域(6)商业和金融领域(7)环境监测领域(8)医疗领域(9)建筑领域(10)军事国防领域(11)航天航空领域 第二章习题答案 1.简述简单嵌入式系统与复杂嵌入式系统的主要区别。 答:简单嵌入式系统很早就已经存在,这类嵌入式系统因为软硬件复杂度都很低,一般不使用操作系统,例如常用的单片机系统。对于复杂的嵌入式系统,它的开发模式发生了极大的改变。一个复杂的嵌入式系统不仅硬件系统的开发比单片机复杂了许多,更重要的是在该系统中采用了嵌入式操作系统,其应用软件的开发转变为使用操作系统标准接口的计算机工程领域的应用软件开发。复杂嵌入式系统具有更强大的功能,但是简单的嵌入式并不会随着复杂的嵌入式系统出现而消亡。2.简述嵌入式系统的体系结构。 答:嵌入式系统从组成上看,可分为嵌入式硬件系统与嵌入式软件系统两大部分。嵌入式硬件层由嵌入式微处理器、嵌入式存储器系统、通用设备和I/O接口等组成。嵌入式系统的软件层分为嵌入式操作系统和嵌入式应用软件两大部分。 3.嵌入式处理器分为哪几类? 答:嵌入式处理器可分为以下四种:嵌入式微控制器(MicroController Unit,MCU),嵌入式微处理器(Embedded Microprocessor Unit,EMPU),嵌入式DSP处理器(Embedded Digital Signal Processor,EDSP)和嵌入式片上系统(System on Chip,SoC)。 4.ARM中常用的嵌入式存储器都有哪些? 答:ARM系统的存储器可以分为片内存储器和片外存储器。片内一般以RAM或SRAM为主。片外通常以Flash和SDRAM为主。嵌入式系统中常用的几种内存有Flash、SRAM、SDRAM、DDRSDRAM
嵌入式AD实验
5.8 A/D 实验 5.8.1 实验目的 1. 了解模数转换的基本原理; 2. 掌握模数转换的编程方法。 5.8.2 实验内容 1. 编写程序对模拟输入进行采集和转换,并将结果显示在LED 上; 2. 通过可变电阻改变模拟量输入,观查显示结果; 5.8.3 预备知识 1. 了解A/D 采样的原理; 2. 了解采样频率的设置; 5.8.4 实验设备 1. 硬件:JX44B0教学实验箱、PC 机; 2. 软件:PC 机操作系统 Windows 98(2000、XP) + ADT IDE 集成开发环境。 5.8.5 基础知识 1. A/D 转换的基本原理 1) 采样和量化 作用:我们经常遇到的物理参数,如电流、电压、温度、压力、速度……电量或非电量都是模拟量。模拟量的大小是连续分布的,且经常也是时间上的连续函数。因此要将模拟量转换成数字信号需经采样——>量化——>编码三个基本过程(数字化过程)。 1Q 2Q 3Q 4Q 5Q 6Q 7Q 图5-14 A/D 采样示意图 采样:
按采样定理对模拟信号进行等时间间隔采样,将得到的一系列时域上的样值去代替u=f(t),即用u0、u1、…un 代替u=f(t)。 这些样值在时间上是离散的值,但在幅度上仍然是连续模拟量。 量化: 在幅值上再用离散值来表示。方法是用一个量化因子Q 去度量;u0、u1、…,得到取整后的数字量。 u0=2.4Q ?2Q 010 u1=4.0Q ?4Q 100 u2=5.2Q ?5Q 101 u3=5.8Q ?5Q 101 编码: 将整量化后的数字量进行编码,以便读入和识别; 编码仅是对数字量的一种处理方法。 例如:Q=0.5V/格,设用三位(二进编码) u0=2.4Q ??→?整量化2Q ??→?编码(010)V V u 15.0)202120(0120=??+?+?= 2) 分类 按被转换的模拟量类型可分为时间/数字、电压/数字、机械变量/数字等。应用最多的是电压/数字转换器。电压/数字转换器又可分为多种类型: 按转换方式可分为:直接转换、间接转换。按输出方式分可分为:并行、串行、串并行。 按转换原理可分为:计数式、比较式。 按转换速度可分为:低速、中速、高速。按转换精度和分辨率可分为:3位、4位、8位、10位、12位、14位、16位等等。 3) 工作原理 类似于用天平称物体重量,设有一待测物为4.42g ;满度测量量程为 g R NFS 12.5=, 砝码种类有四种:)56.2(21g R NFS 、)28.1(41g R NFS 、)64.0(81g R NFS 、)32.0(161 g R NFS 。 测量方法:先大砝码,后小砝码,依次比较(累计比较),要的记“1”,不要的记“0”。 实测物重G 为: 留 四次为去三次为留二次为留 一次为g g g g g g g g g g g g R R R R G NFS NFS NFS NFS 42.416.432.084.3:42.444.464.084.3:42.484.328.156.2:42.456.2:16 1 1810411211<=+>=+<=++?+?+?= 误差:
arm嵌入式系统课后习题部分答案
a r m嵌入式系统课后习题 部分答案 The pony was revised in January 2021
一填空题嵌入式系统从大的方面分为(嵌入式系统硬件平台)和(嵌入式软件)两大部分。 驱动层程序一般包括(硬件抽象层HAL)、(板级支持包BSP)和(设备驱动程序)。 嵌入式系统核心是嵌入式处理器,可分为(嵌入式微处理器)、(嵌入式微控制器)、嵌入式DSP处理器和(嵌入式片上系统SoC)4大类。处理器分为(ARM)和(Thumb)两种操作状态。 状态下,SP寄存器指的是(R13)、LR寄存器指的是(R14)、PC寄存器指的是(R15). 处理器支持的数据类型中,字节为(8)位、半字为(16)位、字为(32)位。 (-S)指令集包括(ARM)指令集和(Thumb)指令集。 指令用于从(存储器)中将一个32位的字数据传送到(目的寄存器)中。 指出下面各条指令的寻址方式。 SUB R0,R1,R2 ;寻址方式:(寄存器寻址)。
SUBS R0,R0,#1 ;寻址方式:(立即寻址)。 MOV R0,R2,LSL#3 ;寻址方式:(寄存器移位寻址)。 SWP R1,R1,[R2] ;寻址方式:(寄存器间接寻址)。 LDR R2,[R3,#0x0C] ;寻址方式:(基址寻址)。 汇编语言源程序中语句一般有(指令)、(伪指令)、(伪操作)和宏指令组成。 对Flash存储器的编程可通过(JTAG仿真/调试器)、( ISP )和(IAP)3重方法来实现。 异常向量表可以来自4个不同的存储器区域,分别是(片内Flash )、(片内SRAM )、( Boot Block )和片外存储器。 系列的定时器主要用于3个方面:(对内部事件进行计数的间隔定时器)、(通过捕获输入实现脉宽解调器)、(自由运行的定时器)。二选择题 可以表示微控制器的缩略词是( B ) A. MPU B. MCU C. WDT 类存储器包括( ABD )
《嵌入式》课后习题答案
第一章 1.简述嵌入式的定义 以应用为中心、以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 2.举例说明嵌入式系统的“嵌入性”、“专用性”、“计算机系统”的基本特征。 按照嵌入式系统的定义,嵌入式系统有3个基本特点,即“嵌入性”、“专用性”与“计算机”。 “嵌入性”由早期微型机时代的嵌入式计算机应用而来,专指计算机嵌入到对象体系中,实现对象体系的智能控制。当嵌入式系统变成一个独立应用产品时,可将嵌入性理解为内部嵌有微处理器或计算机。 “计算机”是对象系统智能化控制的根本保证。随着单片机向MCU、SoC发展,片内计算机外围电路、接口电路、控制单元日益增多,“专用计算机系统”演变成为“内含微处理器”的现代电子系统。与传统的电子系统相比较,现代电子系统由于内含微处理器,能实现对象系统的计算机智能化控制能力。 “专用性”是指在满足对象控制要求及环境要求下的软 硬件裁剪性。嵌入式系统的软、硬件配置必须依据嵌入对象
的要求,设计成专用的嵌入式应用系统。 3. 简述嵌入式系统发展各阶段的特点。 (1)无操作系统阶段:使用简便、价格低廉;(2)简单操作系统阶段:初步具有了一定的兼容性和扩展性,内核精巧且效率高,大大缩短了开发周期,提高了开发效率。 (3)实时操作系统阶段:系统能够运行在各种不同类型的微处理器上,具备了文件和目录管理、设备管理、多任务、网络、图形用户界面Graphic User Interface,GUI)等功能,并提供了大量的应用程序接口Application Programming Interface,API),从而使应用软件的开发变得更加简单。(4)面向Internet阶段:进入21世纪,Internet技术与信息家电、工业控制技术等的结合日益紧密,嵌入式技术与Internet技术的结合正在推动着嵌入式系统的飞速发展 4.简述嵌入式系统的发展趋势。 (1)新的微处理器层出不穷,精简系统内核,优化关键算法,降低功耗和软硬件成本。(2)Linux、Windows CE、Palm OS等嵌入式操作系统迅速发展。(3)嵌入式系统的开发成了一项系统工程,开发厂商不仅要提供嵌入式软硬件系统本身,同时还要提供强大的硬件开发工具和软件支持包。
嵌入式系统模拟试题及答案
学习中心/函授站_ 姓名学号 西安电子科技大学网络与继续教育学 院 2014学年下学期 《嵌入式系统》期末考试试题 (综合大作业) 题号一二三四五总分 题分2010302020 得分 考试说明: 1、大作业于2014年12月25日下发,2015年1月10日交回; 2、考试必须独立完成,如发现抄袭、雷同均按零分计; 3、答案须手写完成,要求字迹工整、卷面干净。 一、问题简述(每小题4分,共20分) 1、简述嵌入式系统的定义和组成结构。 答:嵌入式系统是以应用为中心,以计算机技术为基础,并软硬件可剪裁、功能、 ,可靠性、体积、重量、成本、功耗、成本、安装方式等方面符合要求的专用计算机系统。 嵌入式系统一般由嵌入式微处理器、存储与I/O部分、外设与执行部分、嵌入式软件等四个部分组成。 2、简单说明ARM微处理器的特点。 答:(1) 体积小、低功耗、低成本、高性能。 (2) 支持Thumb(16位)/ARM(32位)双指令集,能很好地兼 容8位/16位器件。
(3) 大量使用寄存器,指令执行速度更快。 (4) 大多数数据操作都在寄存器中完成,通过Load/Store结 构在内存和寄存器之间批量传递数据。 (5) 寻址方式灵活简单,执行效率高。 (6) 指令长度固定。 3、简述嵌入式系统产品的设计和开发过程。 答:①在嵌入式系统的开发过程中,一般采用的方法是首先在通用PC机上的集成开发环境中编程;②然后通过交叉编译和链接,将程序转换成目标平台(嵌入式系统)可以运行的二进制代码;③接着通过嵌入式调试系统调试正确;④最后将程序下载到目标平台上运行。 要强调,选择合适的开发工具和调试工具,对整个嵌入式系统的开发都非常重要。 4、简述嵌入式系统设计中要考虑的因素。 答:在嵌入式系统的开发过程中,要考虑到实时性、可靠性、稳 定性、可维护性、可升级、可配置、易于操作、接口规范、抗干 扰、物理尺寸、重量、功耗、成本、开发周期等多种因素。 5、什么是BootLoader,了解其在嵌入式系统中作用。 答:就是启动载入或引导加载又叫自举装载。由于系统加电后需 要首先运行BootLoader这段程序,因此它需要放在系统加电后 最先取指令的地址上。嵌入式处理器的生产厂商都为其处理器预 先安排了一个在系统加电或复位后最先取指令的地址。 二、名词解释(每小题2分,共10分) 1、DSP(Digital Signal Processor),数字信号处理器,一种特别用于快速处理数字信号的微处理器。DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。 2、RTOS Real Time Operating System. 译为实时操作系统。实时系统是指一个能够在指定的或者确定的时间内,实现系统功能和对外部或内部、同步或异步事件作出响应的系统。 3、BSP设计板级支持包(BSP)的目的主要是为驱动程序提供访问硬件设备寄存器的函数包,从而实现对操作系统的支持。类似于PC机上的BIOS,是一个承上启下的软件层次。由嵌入OS和用户开发相结合取得。BSP一般是在嵌入式系统上固化存放。 4、总线竞争就是在同一总线上,同一时刻,有两个以上器件要通
周立功-ARM嵌入式系统基础教程课后习题答案11
第一章 思考与练习 1、举出3个书本中未提到的嵌入式系统的例子。 答:红绿灯控制,数字空调,机顶盒 2、什么叫嵌入式系统 嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系 统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 3、什么叫嵌入式处理器?嵌入式处理器分为哪几类? 嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。 嵌入式微处理器(Embedded Microprocessor Unit, EMPU) 嵌入式微控制器(Microcontroller Unit, MCU) 嵌入式DSP 处理器(Embedded Digital Signal Processor, EDSP) 嵌入式片上系统(System On Chip) 4、什么是嵌入式操作系统?为何要使用嵌入式操作系统? 是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实时操作系统提高了系统的可靠性。 其次,提高了开发效率,缩短了开发周期。再次,嵌入式实时操作系统充分发挥了32 位CPU 的多任务潜力。 第二章 1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务是什么? 项目的生命周期一般分为识别需求、提出解决方案、执行项目和结束项目4 个阶段。 识别需求阶段的主要任务是确认需求,分析投资收益比,研究项目的可行性,分析厂商所应具备的条件。 提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。 执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定期监控进展, 分析项目偏差,采取必要措施以实现目标。 结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系统交接给维护人员;结清各种款项。 2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险? 在一个项目中,有许多的因素会影响到项目进行,因此在项目进行的初期,在客户和开发团队都还未投入大量资源之前,风险的评估可以用来预估项目进行可能会遭遇的难题。 需求风险;时间风险;资金风险;项目管理风险 3、何谓系统规范?制定系统规范的目的是什么? 规格制定阶段的目的在于将客户的需求,由模糊的描述,转换成有意义的量化数据。 4、何谓系统规划?为何要做系统规划 系统规划就是拟定一个开发进程,使项目在合理的进程范围中逐渐建构完成。其目地是让客户可以进一步地掌握系统开发的进程,并确定检查点,以让双方确定项目是否如预期中的进度完成。 5、为什么在项目结束前需要进行项目讨论? 项目的讨论一个项目进行的反馈机制。通过这一个程序,项目团队的经验才可以被记录 下来,也就是说,这是一个撰写项目历史的过程。 第三章 1、ARM7TDMI中的T、D、M、I的含义是什么? 64 位乘法指令(带M 后缀的)、支持片上调试(带D 后缀的)、高密度16 位的Thumb 指令机扩展(带T 后缀的)和EmbededICE 观察点硬件(带I 后缀的) 2、ARM7TDMI采用几级流水线?使用何种存储器编址方式? 三级流水线(取指译码执行);使用了冯·诺依曼(V on Neumann )结构,指令和数据共用一条 32 位总线。 3、ARM处理器模式和ARM处理器状态有何区别? 处理器模式指的是处理器在执行程序时在不同时刻所处的不同状态,处理器状态指的是处理器当前所执行的指令集。 4、分别列举ARM的处理器模式和状态。 状态: ARM 状态32 位,这种状态下执行的是字方式的ARM 指令
嵌入式复习题含全部答案)
嵌入式系统复习题 一、填空题: 1、试列举三种主流的嵌入式处理器:( ARM )、( MIPS )、(PowerPC)。 2、ARM处理器共有(37)个寄存器,其中包括(31个通用寄存器)和(6个状态寄存器)。 3、寄存器R13在ARM指令中(堆栈指针SP )。R14也称(程序连接寄存器LR)在程序里的作用是(程序计数器PC的备份)。当发生中断或异常时,对应分组寄存器分别是(R14_svc、R14_irq、R14_fiq、R14_abt和R14_und用来保存R15的返回值)。 4、ARM微处理器支持两种指令集:(ARM)和(Thumb)。 5、寄存器R15用作(程序计数器PC)。该寄存器在ARM状态下,(位[1:0]为00),位[31:2]用于保存PC;在Thumb状态下,(位[0]为0),位[31:1]用于保存PC。 6、CPSR用作( 状态寄存器 ),CPSR可在任何运行模式下被访问。每一种运行模式下又都有一个专用的物理状态寄存器,称为(程序状态保存寄存器SPSR)。 7、Thumb状态下的寄存器集是ARM状态下寄存器集的一个子集,程序可以直接访问的通用寄存器是(R0—R7,PC,SP,LR,CPSR)。 8、ARM指令中条件执行功能是通过(指令中添加条件码)来实现的,包含的条件码位于指令的最高(四)位。 9、试列举五种以上常见的嵌入式操作系统:(μC/OS-II)、(Vxworks)、(WinCE)、(Linux/μCLinux)、(PalmOS)。 10、计算机结构中,哈佛结构和冯?诺依曼结构的主要区别是(指令与数据分开),ARM7采用(冯?诺依曼结构),ARM9采用(哈佛结构)。 11、ARM处理器采用(Thumb指令)操作来访问SFR。
嵌入式系统设计复习题
山东理工大学成人高等教育嵌入式系统设计复习题 一、简述题 1、画出MCS-51单片机的总线形成图,并写出地址线和数据线的数量 2、简述定时器/计数器方式1和方式2的最长定时器时间与最短定时时间(外部晶振为6MHz) 3、简述串行口的控制寄存器SCON中的SM0、SM1、SM2的含义 4、如果一个8位的D/A转换器满量程为5V,试分别确定当数字量为75H、0ACH时对应的模拟量。 5.MCS-51系列单片机三总线如何产生?说明各控制总线的名称及含义。 6.写出MCS-51单片机P3口的第二功能名称含义。 7.MCS-51单片机工作寄存器区字节地址范围是多少?若选择当前工作寄存器区为2区,应如何设置? 8.当中断控制寄存器IE的内容为92H时的含义是什么? 9.简述程序状态字PSW各位的含义。 10.MCS-51系列单片机内部有哪些主要逻辑部件组成? 11.P3口的第二功能是什么。 12.MCS-51单片机内部RAM如何分配的? 13.写出将片内RAM 30H单元、片外RAM 3000H单元的内容读入A中的指令。 14.位地址20H与字节地址20H有何区别?位地址20H具体在片内RAM中什么位置?15.写出特殊功能寄存器IE、IP、TMOD的名称及功能。 二、名词解释 1、A/D分辨率 2、中断
三、编程 1、定时器/计数器初始化编程 若要求T0作为定时器以方式1工作,定时时间为50ms; T1作为计数器以方式2工作,计3个脉冲溢出。设单片机晶振频率为12MHZ,编写初始化程序。 2、编程将片内RAM31H单元的高3位和30H单元的高5位合并为1个字节送片内RAM32H,要求31H的高3位在高位上。 3.以30H为起始地址的内部RAM中,连续存放8个单字节无符号数, 试编一程序,求其平均值送52H单元。 4.片内RAM的40H、41H单元存放2个压缩的BCD码,编制程序将其转换成七段码,并存入片内30H~33H单元中。已知七段码表的首地址为TAB。 四、设计 1、画出利用8255A管理LED3位静态显示的原理简图,并编写显示数字5、7、9的程序。 五、指令题 1.设片内RAM(30H)=0EH,执行下面程序后,(A)=?该程序完成何功能? MOV R0,#30H 答: MOV A,@R0 结果A= RL A 功能: MOV B,A RL A RL A ADD A,B RET 2.设(A)=40H,(R1)=23H,(40H)=05H。执行下列两条指令后,累加器A和R1以及内部RAM中40H单元的内容各为何值? (1)XCH A,R1 (2)XCHD A,@R1 3.设内部RAM中44H单元的内容为43H,执行下列程序后 MOV SP,#78H MOV R1,#44H