




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 22 已知 A 7AH R0 30H 30H A5H PSW 80H 问执行 单独执行 以下各指令的结果 XCH A R0 A 30H R0 7AH XCH A 30H A A5H XCH A R0 A A5H XCHD A R0 A 75H 二者低 4 位互换 SWAP A A A7H A 高低 4 位互换 ADD A R0 A AAH Cy 0 OV 1 a6 a7 1 ADD A 30H A 1FH Cy 1 OV 0 ADD A A 30H A AAH Cy 0 OV 1 ADDC A 30H A 20H Cy 1 OV 0 因为 PSW 的 Cy 1 SUBB A 30H A D4H Cy 1 OV 1 因为 PSW 的 Cy 1 SUBB A 30H A 49H Cy 0 OV 0 因为 PSW 的 Cy 1 1 24 已知 A 83H R0 17H 17H 34H 执行以下指令后 A ANL A 17H 逻辑与 A 03H ORL 17H A 逻辑或 17H 37H XRL A R0 异或 A 34H CPL A 取反 A CBH 1 25 将内部 RAM20H 21H 22H 连续三个单元的内容以此放入 2FH 2DH 2EH 单元 MOV R0 20H MOV R1 2FH LOOP MOV A R0 MOV R1 A INC R0 DEC R1 CJNE R0 23H LOOP SJMP 1 34 外部数据 RAM 在 2000H 2100H 区域有一个数据块 将他们移动到 3000H 3100H 区域 解一 MOV DPTR 2000H MOV P2 30H MOV R1 00H LOOP MOVX A DPTR MOV X R1 A INC DPTR INC R1 CJNE R1 00H LOOP INC P2 MOV X A DPTR MOVX R1 A 解二 MOV DPTR 2000H MOV P2 30H MOV R1 00H LOOP MOV X A DPTR MOV X R1 A INC DPTR INC R1 CJNE R1 00H LOOP INC P2 MOV A DPH CJNE A 21H NEXT NEXT1 MOVX A DPTR MOVX R1 A SJMP NEXT INC DPTR SJMP NEXT1 解三 MOV DPTR 2000H MOV R5 00H MOV A 00H MOV R1 A LOOP MOV A R1 MOV X A A DPTR MOV X R0 A MOV DPTR 3000H MOV A R0 MOVX A DPTR A INC R1 DJNZ R5 LOOP MOV DPTR 2100H MOVX A DPTR MOV DPTR 3100H MOVX DPTR A 1 35 外部数据 RAM 从 2000H 开始有 100 个数据块 将他们移动到 2030 开始的单 元 解一 MOV DPTR 2000H MOV R4 64H MOV P2 10H LOOP1 MOVX A R1 MOV R1 00H MOVX DPTR A MOV R4 64H INC R1 LOOP MOVX A DPTR INC DPTR MOV X R1 A DJNZ R4 64H LOOP1 INC DPTR INC R1 DJNZ R4 64H LOOP MOV DPTR 2030H MOV P2 10H MOV R1 00H 解二 MOV DPTR 2000H MOV R3 64H MOV P2 10H DJNZ R3 LOOP NEXT MOV R1 00H SJMP MOV R4 64H LOOP MOVX A DPTR MOVX R1 A INC DPTR INC R1 NEXT1 DJNZ R4 LOOP LOOP1 MOV DPTR 1000H MOV P2 20H MOV R1 30H 习题参考答案 P 79 习题习题 3 8051 主要的存储空间是什么 为什么两个主要的存储空间是什么 为什么两个 RAM 的空间不同 的空间不同 答 答 8051 单片机的存储空间分为数据单片机的存储空间分为数据 RAM 和代码和代码 ROM 其中数据 其中数据 RAM 又分为片内又分为片内 RAM 和片外和片外 RAM 片内片内 RAM 的地址为的地址为 8 位 由单片机指令直接在单片机内部寻址访问 而片外位 由单片机指令直接在单片机内部寻址访问 而片外 RAM 的地址为的地址为 16 位 只能由单片机的位 只能由单片机的 MOVX 指令通过外部总线访问 指令通过外部总线访问 习题习题 4 编一段程序 把编一段程序 把 8 位口新的输入值和前一次的输入值进行比较 然后产生一个位口新的输入值和前一次的输入值进行比较 然后产生一个 8 位位 数 这个数中的位为数 这个数中的位为 1 的条件是 仅当新输入的位为的条件是 仅当新输入的位为 0 而前一次输入的位为 而前一次输入的位为 1 答 设该答 设该 8 位口为位口为 P1 新产生的 新产生的 8 位数为位数为 x unsigned char x x P1 x 习题习题 6 按给定的存储类型和数据类型 写出下列变量的说明形式 按给定的存储类型和数据类型 写出下列变量的说明形式 up down 整数 使用堆栈存储 整数 使用堆栈存储 first last 浮点数 使用外部数据存储器存储 浮点数 使用外部数据存储器存储 cc ch 字符 使用内部数据存储器存储 字符 使用内部数据存储器存储 答 堆栈只能存储内部答 堆栈只能存储内部 RAM 字节内容 必须在字节内容 必须在 idata 区 区 复位后复位后 SP 07H 但是 但是 07H 中存中存 放堆栈地址 上电复位后典型寄存器的值 放堆栈地址 上电复位后典型寄存器的值 int idata up down float xdata first last char idata cc ch 或或 char data cc ch 习题习题 7 判断下列关系表达式或逻辑表达式的运算结果判断下列关系表达式或逻辑表达式的运算结果 1 或或 0 1 10 9 1 1 2 0 0 3 10 1 4 8 0 1 5 3 2 0 6 设 设 x 10 y 9 x 8 b 结果右移 结果右移 2 位 注 位 注 b 不是取反也不能确定为负数 取反一般不是取反也不能确定为负数 取反一般 是变成是变成 2 进制然后按位取反 如进制然后按位取反 如 b 3 即即 0FDH 则 则 b 3 而不是 而不是 0FD 按位取反按位取反 4 c a b a a 1 a b b b 1 结果赋给结果赋给 c 5 m m 若结果为 若结果为 1 再和再和 n 相与 相与 X 不是 不是 a b 若结果为 若结果为 0 再再 c do scanf c switch k case 1 printf A break case 2 printf B break case 3 printf C break case 4 printf D break default printf break while k Z while 1 习题习题 7 若在若在 C 中的中的 switch 操作漏掉操作漏掉 break 会发生什么 会发生什么 答 若在答 若在 case 语句中漏掉语句中漏掉 break 则程序执行 则程序执行 case 选择部分程序后不会按照要求退出选择部分程序后不会按照要求退出 switch 语句 而是继续执行下一个语句 而是继续执行下一个 case 语句选择的内容 语句选择的内容 习题习题 8 编写程序 输出编写程序 输出 x3数值表 数值表 x 为为 0 10 main unsigned char x unsigned int y for x 0 x 11 x y unsigned int x x x printf c d n x y while 1 习题习题 9 用三种循环方式分别编写程序 显示用三种循环方式分别编写程序 显示 1 100 的平方 的平方 答 三种流程图如下 答 三种流程图如下 define uint unsigned int main unsigned int y unsigned char x for x 0 x 101 x y unsigned int x x printf c d n x y while 1 main unsigned int y unsigned char x 1 while x 101 y unsigned int x x printf c d n x y x while 1 main unsigned int y unsigned char x 1 do y unsigned int x x printf c d n x y x while x 101 while 1 习题 9 写出下列数组使用 运算的替换形式 1 data 2 2 num i 1 3 man 5 3 1 data 2 p107 2 num i 1 3 man 5 3 习题 10 设下列运算表达式中 p 是指针 试分析各表达式的运算顺序 1 b p 2 x p 3 a i p 4 y p 6 答 1 先取 p 给 b 再使 p 减 1 单元 注意不是 p 减 1 单元 2 先取 p 给 x 再使 p 加 1 单元 注意不是 p 加 1 单元 3 先使 i 加 1 再取 p 给 a i 再使 p 加 1 单元 4 这里 p 是指针的指针 先使 p 加 1 单元 再使 p 减 1 单元 再使 p 减 6 后赋给 y 习题 12 结构的定义和说明在程序中的作用是什么 在对结构初始化时应该注意些什么问 题 答 结构的定义和说明在程序中可以把一组关系密切的变量存放在一个连续的存储空间中 便于对这些变量的访问 同一个结构中不能存在同名变量名称 可以把具有相同结构的已知结构直接用 对结构进行赋值 或者通过其成员的逐个 引用分别赋值 在没有赋值前结构成员的值是不确定的 有可能被编译器启动代码初始化 为 0 习题 14 使用 union 的目的是什么 定义 union 它用于容纳下列数据 int data 4 char ch 8 float f 答 使用 union 的目的之一是若干个不会同时使用的变量公用存储单元 以便节省存储空间 同一个 union 中不能存在同名变量名称 union data type int data 4 char ch 8 float f mydata 习题参考答案 P 142 习题 1 C 语言中 函数的存储类型和数据类型的意义是什么 答 一 函数存储类型有 extern 外部函数 和 static 内部函数或静态函数 在没有任 何存储类说明的情况下函数都是全程序可见的 即函数的默认存储类特性为 extern Static 存储类使函数对对其所在的文件定义之前的部分和非定义文件是不可见的 不能调用的 二 数据类型是说明函数的返回值类型 包括简单类型 char unsigned char int unsigned int long unsigned long float bit 复合型 stuct union 和无类型 void 习题 3 作为函数形式参数使用的数组名具有什么特征 它们的使用特点是什么 1 当用数组作为函数的参数时 应当在调用函数和被调用函数中分别定义数组 2 实参数数组与形式参数数组的类型应当一致 3 实参数数组与形式参数数组的大小可以一致 也可以不同 用户需自行考虑数组的边界 问题 习题 5 当一个函数需要返回多于一个值时 可以怎么做 可以通过返回指针实现 先把需要返回的所有数据连续存放在一段存储空间中 让该 指针指向其首地址 然后返回该指针 7 编写字符串字符替换函数 replchr s c1 c2 把字符串 s 中的 c1 置换为 c2 void replchr char s char c1 char c2 char i 0 temp while s i 0 if s i c1 temp c1 c1 c2 c2 temp else s 下一个字符 void main char str ABCDabcd replchr str D d 8 编写把十六进制字符串 s 变换成整数值返回的函数 htoi s include stdio h include string h int translat char c 每个字符转换为十进制 数 if c 0 return c 48 9 0 x39 变成 9 就是 hex39 30 30 表示 0 依此类推 if c a A 变成 10 就是十进制 65 55 依此 类推 return 1 其它字符返回 1 int htoi char str int length strlen str if length 0 return 0 int i n 0 stat for i 0 i 0 n n 16 stat return n ASCII 码 ASCII 0 9 A F a f HEX 30 39H 41 46H 61 66H 十进制 48 57 65 70 97 102 void main char Hex 20 printf Input Num at Hexadecimal gets Hex printf s d Hex Htoi Hex 习题 9 编写函数 itob n 它把整数 n 变换成二进制字符串 并返回字符串地址 unsigned char p 17 unsigned char itob int n unsigned char i 0 unsigned int m if n 0 p i m n else m n do p i m 最高位是否为 1 m 1 while i 16 p i 0 return p p 0 p 1 p 16 依此表示这个二进制字符串从高位到低位排列 10 编写把字符串 s 逆转的函数 reverse s void reverse unsigned char s unsigned char i s n for i 0 i2 reverse p 1 i 2 习题 12 设计并初始化一个具有 2 个元素的 2 维数组保存图画 如正方形 的 X Y 坐标值 然 后设计一个画图函数 标明怎样调用函数画正方形 include unsigned char G 1 2 1 2 左上角坐标为 G 0 0 G 0 1 void Square unsigned char g 1 2 unsigned char n unsigned char i j 边长为 n for j 0 j g 0 1 n j if j g 0 1 j g 0 1 n for i 0 i g 0 0 i printf s for i g 0 0 n i printf s else if j g 0 1 for i 0 i g 0 0 n i printf s else for i 0 i g 0 0 i printf s printf s for i i g 0 0 n i printf s printf s 习题参考答案 254 习题习题 2 利用图利用图 11 3 的接口电路 编写由的接口电路 编写由 ADC0809 的通道的通道 6 连续采集连续采集 20 个数据放在数组中个数据放在数组中 的程序的程序 解一 解一 include include define IN6 XBYTE 0 x7ffe 设置设置 ADC0809 的通道的通道 6 地址地址 sbit ad busy P3 3 即即 EOC 状态状态 char ad0809 void A D 采集函数采集函数 uchar i IN6 0 启动转换启动转换 i i i i 延时等待延时等待 EOC 变低变低 while ad busy 0 查询等待转换结束查询等待转换结束 return IN6 void main void static uchar idata ad 20 uchar j for j 0 j 20 i ad j ad0809 20 次采样次采样 ADC0809 通道通道 6 的值的值 解二 解二 include include define uchar unsigned char define IN6 XBYTE 0 xfffe 设置设置 ADC0809 的通道的通道 6 地址地址 sbit ad busy P3 3 即即 EOC 状态状态 void ad0809 uchar idata x 采样结果放指针中的采样结果放指针中的 A D 采集函数采集函数 uchar i uchar xdata ad adr ad adr for i 0 i 20 i 20 次采集次采集 ad adr 0 启动转换启动转换 i i 延时等待延时等待 EOC 变低变低 i i while ad busy 0 查询等待转换结束查询等待转换结束 x i ad adr 存转换结果存转换结果 void main void static uchar idata ad 20 ad0809 ad 采样采样 ADC0809 通道的值通道的值 4 对 0809 进行数据采集编程 要求对 8 路模拟量连续采集 24h 每隔 10min 采集一次 数 据存储在外部数据存储区中 解 图 11 3 include include define uchar unsigned char define uint unsigned int define IN0 XBYTE 0 x7ff8 设置设置 ADC0809 的通道的通道 0 地址地址 sbit ad busy P3 3 即即 EOC 状态状态 uint overflow count 0 T1 中断次数初值中断次数初值 void ad0809 uchar xdata x 采样函数 结果采样函数 结果 x 放外部数据存储器放外部数据存储器 uchar i uch
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课件模板色彩搭配图表
- 生态谷物教程课件
- 贫血患者诊疗与健康教育
- 高处跌落应急培训
- 星级酒店管理培训
- 小学石头画课件
- 课件显示重新插入磁盘
- 历史考试题及答案大全
- 课件显示屏文字竖向显示
- 快门高压考试题及答案
- 2025年大麻酚油(CBD油)行业研究报告及未来行业发展趋势预测
- 行政执法常识考试题库及答案
- 山东省潍坊市2025-2026学年上学期高三开学调研监测语文试题参考答案
- 钢结构隔断施工方案(3篇)
- GB/T 20716.2-2025道路车辆牵引车和挂车之间的电连接器(7芯)第2部分:12 V标称电压车辆的制动系统和行走系的连接
- 学校“1530”安全教育记录表(2024年秋季全学期)
- 公路工程标准施工招标文件(2018年版)
- SJG 01-2010 深圳市地基基础勘察设计规范-高清现行
- 康复护理学-康复评定认知功能评定
- 最全的食物相克表(打印版)
- 施工现场安全标志和安全防护设施设置方案
评论
0/150
提交评论