第一部分 C 语言程序设计 C 语言程序设计同步练习答案 一 单选题 1-5 DBCAC 二 判断题 1. 错 2. 错 第 1 章绪论 第 2 章 C 语言基本数据类型 运算符和表达式 一 单选题 1-5 ADADC 6-10 ADBBA ADCAD DACBD 21-25

Size: px
Start display at page:

Download "第一部分 C 语言程序设计 C 语言程序设计同步练习答案 一 单选题 1-5 DBCAC 二 判断题 1. 错 2. 错 第 1 章绪论 第 2 章 C 语言基本数据类型 运算符和表达式 一 单选题 1-5 ADADC 6-10 ADBBA ADCAD DACBD 21-25"

Transcription

1 第一部分 C 语言程序设计 C 语言程序设计同步练习答案 一 单选题 1-5 DBCAC 二 判断题 1. 错 2. 错 第 1 章绪论 第 2 章 C 语言基本数据类型 运算符和表达式 一 单选题 1-5 ADADC 6-10 ADBBA ADCAD DACBD CADBB CA 二 填空题 字母下划线 8. 数据类型变量名表列 9. a=a+b ; b=a-b ; a=a-b ; 10. double 三 判断题 1. 错 2. 错 3. 错 4. 对 5. 错 6. 错 7. 对 第 3 章顺序结构程序设计 一 单选题 1-5 CDACD 6-10 CACDA BDABC BBCAC DDCBB CDC 三 阅读程序题 a=12345,b=-1.98e+002,c= , yes f. 2f 第 4 章选择结构 一 选择题 1-5 CDABC 6-9 BCDD 二 阅读程序题 1. *& 2. pass fail 三 程序填空题 1. 1 a==b a==c b==c 2 a==b && b==c 3 a2+b2==c2 a2+c2==b2 b2+c2==a2 四 编程题 1. #include "stdio.h" float a; printf(" 请输入一个实数 :"); 105

2 scanf("%f", &a); if(a>=0) a = a; else a = -a; printf("%f\n", a); 2. #include "stdio.h" int a; printf(" 请输入一个整数 :"); scanf("%d", &a); if(a%2==0) printf("%d 是一个偶数 \n", a); else printf("%d 是一个奇数 \n", a); 3. #include<stdio.h> int score,grade,temp; printf("your scroe:"); scanf("%d",&score); if(score>100 score<0) printf("error\n"); else temp=score/10; switch(temp) case 10: case 9:grade='A';break; case 8:grade='B';break; case 7:grade='C';break; case 6: grade='d';break; default: grade='e';break; printf("grade:%c\n",grade); 第 5 章循环结构一 选择题 1-5 BBBCC 6-10 DCCAC ABCCB BBCCA BBACB DCACC 31 A 二 阅读程序题 106

3 1. i=10,j= , , 1, -1, 7. a=16 y=60 8. i=6,k=4 9. 1, MNO JKL MNO GHI 三 填空题 1. 1 f2+f m/n 2 n 3 m%n 3. 1 m=n 2 m 3 m=m/ i<=4 2 count m%i== (cx=getchar()) 2 front!= 3 cx 7. 1 printf( \n ) 8. 1 t=sign*i 2 sign=-sign 四 编程题 1. #include<stdio.h> int s=0,i; for(i=1;i<100;i=i+2) s+=i; printf( %d,s); 2. #include<stdio.h> int n, i, sum; printf(" 请输入 n:"); scanf("%d", &n); if (n%2==0) for(i=0, sum=0; i<=n/2; i++) sum = sum + 2*i; else for(i=0, sum=0; i<=n/2; i++) sum = sum + 2*i+1; printf("sum=%d\n", sum); 3. #include "stdio.h" int n, i, m; printf(" 请输入 n:"); scanf("%d", &n); m = 0; while (n) m = m*10 + n%10; n = n / 10; 107

4 printf(" 逆序数是 %d\n", m); 4. #include "stdio.h" int n, f, i; printf(" 请输入 n:"); scanf("%d", &n); for (i=1, f=1; i<=n; i++) f = f * i; printf("%d!=%d\n", i, f); 5. #include "stdio.h" int i,a,b,c; for(i=100;i<1000;i++) c=i/100; b=i/10%10; a=i%10; if(a*a*a+b*b*b+c*c*c==i) printf("%d,%d",a*a*a+b*b*b+c*c*c,i); 6. #include "stdio.h" #define EPS 1e-5 double e, item; int i; item = 1; e = 1; i = 1; do item = item * i; e = e + 1.0/item; i++; while (1.0/item>EPS); printf("e=%lf\n", e); printf(" 共累加了 %d 项 \n", i-1); 108

5 7. #include "stdio.h" int n, i, term, sum; printf(" 请输入正整数 n:"); scanf("%d", &n); i = 0; term = 1; sum = 0; do i++; term = term * i; sum = sum + term; while(sum<n); printf("m=%d\n", i-1); 8. #include "stdio.h" int chicks, rabbits; for (rabbits=0; rabbits<=35; rabbits++) chicks = 35 - rabbits; if (2*chicks+4*rabbits==94) printf("chicks:%d\trabbits:%d\n", chicks, rabbits); 9. #include<stdio.h> void main( ) int a,b,c; for(a=0;a<=20;a++) // 鸡翁最多可买 20 只 for(b=0;b<=33;b++) // 鸡母最多可买 33 只 c=100-a-b; // 鸡雏的数目 if(5*a+3*b+(float)c/3==100) // 判断百钱 printf(" 鸡翁 %d 只, 鸡母 %d 只, 鸡雏 %d 只 \n",a,b,c); 10. #include "stdio.h" double money, term; 109

6 int i; for (i=1, term=1, money=1; i<=30; i++) term *= 2; money += term; printf(" 陌生人给百万富翁 %d 万元 \n", 10*30); printf(" 百万富翁给陌生人 %lf 万元 \n", money/100/10000); 11.#include<stdio.h> int i,score,grade,temp; for(i=0; i<100; i++) printf("your scroe:"); scanf("%d",&score); if(score>100 score<0) printf("error\n"); else temp=score/10; switch(temp) case 10: case 9:grade='A';break; case 8:grade='B';break; case 7:grade='C';break; case 6: grade='d';break; default: grade='e';break; printf("grade:%c\n",grade); 第 6 章数组 一 单选题 1-5 CBBAC 6-10 DAACC ABCDD 16-20ADBCD DBBAD BBBBD DDCAB 36 A 二 阅读程序题 AQM 3. AzyD

7 三 填空题 1. 1 x[i++] 2. 1 a[9-i] 3. 1 float a[10],x 2 i<10 3 a[j]>a[j+1] ' 4 a[j]=a[j+1] 5 (i)%5== a 2 a 3 x[i]<ave 5. 1 i==j 2 a[i][i] 6. 1 n%base 2 n/base 3 j=i;j>=0;j 7. 1 j=i 2 k=i 3 a[j]=max,a[k]=min 8. 1 j=i-1 2 a[i--]=a[j] 3 a[j]=k 9. 1 b[i][j]=a[i][j-1] 2 i=0;i<3;i strlen(t) 2 t[k]==c i=0 2 i< b[j]!= \0 2 b[j]= \0 四 编程题 1. #include <stdio.h> char b[16]='0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'; unsigned int c[64],d,i=0,n,base,k; scanf("%u",&n); for(k=1;k<=3;k++) if(k==1) base=2; else if(k==2) base=8; else base=16; do c[i]=n%base; i++; n=n/base; while(n!=0); for(--i;i>=0;i--) d=c[i]; printf("%c",b[d]); 2. #include <stdio.h> #define N

8 int a[n][n], n; int i, j,sum=0; printf("input n:"); scanf ("%d", &n); for (i=0; i<n; i++) for (j=0; j<n; j++) scanf("%d", &a[i][j]); for (i=0; i<n; i++) for (j=0; j<n; j++) if (i==j i+j==n-1) sum += a[i][j]; printf("sum = %d\n", sum); 第 7 章函数 一 单选题 1-5 CACBA 6-10 DABDA ADBAD BABAD BCCDC 26 A 二 阅读程序题 1.2, 6, 42, !=1 2!=2 3!=6 4!=24 5!= , =-5*5* i=5 7. 程序功能为 : 找出所有水仙花数 i=2 i=2 i=4 i=2 三 填空题 1. 1 x 2. 1 n==1 2 n*fac(n-1) 3 y=fac(n) 3. 1 x2=mid-1 2 x1=mid p++ 2 a[i]=a[i+1] 5. 1 float fun(float,float); 2 x,y 3 y,z 6. 1 i<=10 2 array[i-1] 3 return avgr 四 编程题 1. #include <stdio.h> long Fact(int n) 112

9 int i; long result = 1; for (i=2; i<=n; i++) result = result * i; int m; long ret; printf("input m:"); scanf("%d", &m); ret = Fact(m); // 调用函数 Fact(m), 并将函数的返回值存入 ret printf("%d! = %ld\n", m, ret); 2. #include "stdio.h" long Fact(int n); int n; long result; printf("input n:"); scanf("%d", &n); result = Fact(n); // 调用函数 Fact(n) if (result==-1) // 处理非法数据 printf("n<0, data error!\n"); else printf("%d! = %ld\n", n, result); long Fact(int n) if (n<0) return -1; else if (n==0 n==1) return 1; else return (n * Fact(n-1)); 3. #include "stdio.h" long Fib(int n); int n, i, k; printf("input n:"); scanf("%d", &n); 113

10 for (i=1; i<=n; i++) x = Fib(i); printf("fib(%d) = %d\n", i, x); long Fib(int n) if (n==0) return 0; else if (n==1) return 1; else return (Fib(n-1)+Fib(n-2)); 4. #include <stdio.h> int lcm(int m,int n); int m,n; do scanf( %d%d,&m,&n); while(n<=0 m<=0); printf( %d,%d 的最小公倍数是 %d,m,n,lcm(m,n); int lcm(int m,int n) int result; for(result=1;;result++) if(result%m==0&&result%n==0) break; return result; 5. #include <stdio.h> void swap(int *arr,int n) int t,i; for(i=0;i<n/2;i++) t=arr[i];arr[i]=arr[n-i-1];arr[n-i-1]=t; int a[10]=1,3,5,7,9,11,13,15,17,19,i,n; 114

11 scanf("%d",&n); for(i=0;i<n;i++) printf("%d ",a[i]); printf("\n"); swap(a,n); for(i=0;i<n;i++) printf("%d ",a[i]); 第 8 章指针 一 单选题 1-5 BBCCD 6-10 BBDCB ABBDC DCCCB DCAAA CCBDC 二 程序阅读题 1. aa 三 填空题 1. 1 void inv( int *,int); 2 i<10 3 int *x 4 j=x+n-1 5 *i=*j 2. 1 pc, pb 2 pa, pc 3 pa, pb 3. 1 break 2 *s1-*s *temp++=*src++ 2 dest 5. 1 \0 2 i 3 ; 4 k 5 count 四 编程题 1. #include "stdio.h" #define N 10 void Swap (int *x, int *y); void Readingarr (int a[], int n); void Printarr (int a[], int n); int a[n], b[n], i, n; printf("input n"); scanf("%d", &n); printf(" 输入数组 A, %d 个整数 :", n); Readingarr(a, n); printf(" 输入数组 B, %d 个整数 :", n); Readingarr(b, n); // 交换两个数组的对应值 for (i=0; i<n; i++) Swap(&a[i], &b[i]); Printarr(a, n); Printarr(b, n); void Readingarr (int a[], int n) 115

12 int i; for (i=0; i<n; i++) scanf("%d", &a[i]); void Printarr (int a[], int n) int i; for (i=0; i<n; i++) printf("%5d", a[i]); printf("\n"); void Swap(int *x, int *y) int temp; temp = *x; *x = *y; *y = temp; 2. int strcmp(char *p1,char *p2) while(*p1++==*p2++); if(*p1<*p2) return *p1-*p2; else if(*p1==*p2) return 0; else return *p1-*p2; 一 单选题 1-3 AAB 二 判断题 1. 错 2. 错 第 9 章编译预处理 第 10 章结构体和共用体一 单选题 1-5 BDCDD 6-10 CCDCB 二 阅读程序题 1. A ,ZhangDa, 三 判断题 1. 错 2. 错四 编程题 1. #include <stdio.h> struct date 116

13 int year; int month; int day; ; struct student long studentid; /* 学号 */ char studentname[10]; /* 姓名 */ char studentsex; /* 性别 */ struct date birthday; /* 出生日期 */ int score[4]; /* 4 门课程的成绩 */ ; int i, j, sum[30]; struct student stu[30] = ," 王刚 ",'M',1991,5,19,72,83,90,82, ," 李小明 ",'M',1992,8,20,88,92,78,78, ," 王丽红 ",'F',1991,9,19,98,72,89,66, ," 陈莉莉 ",'F',1992,3,22,87,95,78,90 ; for (i=0; i<4; i++) sum[i] = 0; for (j=0; j<4; j++) sum[i] = sum[i] + stu[i].score[j]; printf("%10ld%8s%3c%6d/%02d/%02d%4d%4d%4d%4d%6.1f\n", stu[i].studentid, stu[i].studentname, stu[i].studentsex, stu[i].birthday.year, stu[i].birthday.month, stu[i].birthday.day, stu[i].score[0], stu[i].score[1], stu[i].score[2], stu[i].score[3], sum[i]/4.0); 2. #include <stdio.h> #include <string.h> #include <stdio.h> 117

14 #include <string.h> #define stu_amount 20 // 学生人数 // 定义学生结构体 struct student char name[8];// 姓名 char number[4];// 学号 float c_score;//c 语言成绩 ; int index; float score=0.0;// 成绩汇总 float avg_score; struct student stu[stu_amount]; for(index =0; index <stu_amount; index++) /* 一个个录入成绩 */ printf(" 请输入第 %d 位学生的信息 :\n",index); printf(" 姓名 :"); scanf("%s",stu[index].name); printf(" 学号 :"); scanf("%s",stu[index].number); printf(" 成绩 :"); scanf("%f",&stu[index].c_score); printf(" 不及格的学生有 :\n"); printf(" 姓名 \t 学号 \t 成绩 \n"); for(index =0; index <stu_amount; index++) score+=stu[index].c_score; if(stu[index].c_score<60) printf("%s\t%s\t%f\n",stu[index].name,stu[index].number,stu[index].c_score); avg_score=score/stu_amount; printf(" 平均成绩是 :%f\n",avg_score); return 0; 3. #include "stdio.h" struct staff 118

15 char name[10];float salary;int age;s[5]; int i; for(i=0;i<5;i++) printf(" 请输入 :"); printf(" 第 %d 个职员姓名 :",i+1); scanf("%s",s[i].name); printf(" 工资 :"); scanf("%f",&s[i].salary); s[i].salary*=1.3; printf(" 年龄 :"); scanf("%d",&s[i].age); s[i].age++; printf(" 修改后 :\n"); for(i=0;i<5;i++) printf(" 第 %d 个职员姓名 :",i+1); printf("%s ",s[i].name); printf(" 工资 :"); printf("%f ",s[i].salary); printf(" 年龄 :"); printf("%d\n",s[i].age); 4. #include "stdio.h" #define M 40 struct stu int xh; char xm[8]; float yw; float sx; float yy; float pjcj; ; struct stu xs[m],a; int i,j,n; scanf("%d",&n); /* 学生人数 */ for(i=0;i<n;i++) 119

16 scanf("%d%s%f%f%f",&xs[i].xh,xs[i].xm,&xs[i].yw,&xs[i].sx,&xs[i].yy); for(i=0;i<n;i++) xs[i].pjcj=(xs[i].yw+xs[i].sx+xs[i].yy)/3; for(i=0;i<n-1;i++) for(j=0;j<=n-i;j++) if(xs[j].pjcj<xs[j+1].pjcj) a=xs[j];xs[j]=xs[j+1];xs[j+1]=a; for(i=0;i<n;i++) printf("%d %s %f %f %f %f\n",xs[i].xh,xs[i].xm,xs[i].yw,xs[i].sx,xs[i].yy,xs[i].p jcj); 5.#include <stdio.h> struct aa char city[10]; float spring; float summer; float autumn; float winter; float avgtem; ; struct aa x[10],t; int i,j; for(i=0;i<10;i++) scanf("%s%f%f%f%f",x[i].city,&x[i].spring,&x[i].summer,&x[i].autumn,&x[i].w inter); for(i=0;i<10;i++) x[i].avgtem=(x[i].spring+x[i].summer+x[i].autumn+x[i].winter)/4; for(i=0;i<9;i++) for(j=0;j<9-i;j++) if(x[j].avgtem>x[j+1].avgtem) t=x[j];x[j]=x[j+1];x[j+1]=t; for(i=0;i<10;i++) printf("%s,%f,%f,%f,%f,%f\n",x[i].city,x[i].spring,x[i].summer,x[i].autumn, x[i].winter,x[i].avgtem); 6. #include <stdio.h> #include <time.h> #include <stdlib.h> 120

17 #include <string.h> struct CARD char suit[10]; char face[10]; ; struct CARD card[52]; /* 顺序存放扑克牌 */ char *Suit[] = "3","4","5","6"; char *Face[] = "A","2","3","4","5","6","7","8","9","X","j","Q","K"; int count=0; int num=0,k; struct CARD t; srand(time(null)); for (k=0; k<52; k++) strcpy(card[k].suit, Suit[k/13]); strcpy(card[k].face, Face[k%13]); for (k=0; k<52; k++) // 输出顺序结果 if(strcmp(card[k].suit,"3")==0) printf("%c",3); else if(strcmp(card[k].suit,"4")==0) printf("%c",4); else if(strcmp(card[k].suit,"5")==0) printf("%c",5); else if(strcmp(card[k].suit,"6")==0) printf("%c",6); printf(" %s ", card[k].face); if((k+1)%13==0) printf("\n"); printf("\n"); printf("\n"); while(count<52) // 随机发牌 k=rand()%52; t=card[count]; card[count]=card[k]; card[k]=t; count++; for (k=0; k<52; k++) /* 输出发牌结果 */ if(strcmp(card[k].suit,"3")==0) printf("%c",3); else if(strcmp(card[k].suit,"4")==0) printf("%c",4); else if(strcmp(card[k].suit,"5")==0) printf("%c",5); 121

18 else if(strcmp(card[k].suit,"6")==0) printf("%c",6); printf(" %s ", card[k].face); if((k+1)%13==0) printf("\n"); 第二部分 微机原理与接口含汇编语言 一 判断题 二 名词解释 第 1 章微型计算机基础 1.1 微型计算机的概述 1. 位 (Bit): 位是指计算机中使用的二进制数的一位, 它是存储信息中的最小单位 只有 0 和 1 两种状态 2. 字节 (Byte): 计算机存储数据时, 通常把 8 位二进制数作为一个存储单元, 一个存储单 元也叫一个字节 字节的长度固定, 它是存储器存取信息的最小单位 3. 字 (Word): 字是计算机中处理和传送信息的最基本单位 它通常与寄存器 运算器 传 输线的宽度一致 4. 字长 : 一个字所包含二进制数的长度称为字长 实际上字长所表示的是 CPU 并行处理的最 大位数 如 16 位机字长为 16 位, 占 2 个字节 32 位机的字长为 32 位, 占 4 个字节 5. 存储容量 : 是指 CPU 构成的系统所能访问的存储单元的字节数 6. 指令 : 计算机能识别和执行的基本操作命令 有两种方式 : 机器码和助记符 7. 指令系统 : 计算机所能执行的全部指令的集合, 称为该计算机的指令系统 8. 程序 : 为完成某一任务所作的指令 ( 或语句 ) 的有序集合称为程序 9. 运算速度 : 计算机完成一个具体任务所用的时间就是完成该任务的时间指标, 计算机的 速度越高, 所用的时间越短 一 名词解释 1.2 微型计算机的组成 1. 中央处理器 (CPU): 它由运算器 控制器和寄存器 3 大部分组成 2. 存储器 : 主要是存储代码和运算数据的 3. 接口 : 是连接主机和外设的桥梁 4. 输入 / 输出 (I/O) 设备 : 能把外部信息传送到计算机的设备叫输入设备 将计算机处理 完的结果转换成人和设备都能识别的和接收的信息的设备叫输出设备 5. 总线 : 连接各硬件部分的线路 一是用来传递数据信息的叫数据总线简称 DB; 二是用来 传递地址信息的简称 AB; 三是专门用来传递控制信息简称 CB 二 简答题 1. 答 : 微机主要有存储器 I/O 设备和 I/O 接口 CPU 系统总线 操作系统和应用软件组 成, 各部分功能如下 : CPU: 统一协调和控制系统中的各个部件 系统总线 : 传送信息 存储器 : 存放程序和数据 122

19 I/O 设备 : 实现微机的输入输出功能 I/O 接口 :I/O 设备与 CPU 的桥梁操作系统 : 管理系统所有的软硬件资源 2. 答 : 微型计算机的基本工作过程是执行程序的过程, 也就是 CPU 自动从程序存放的第 1 个存储单元起, 逐步取出指令 分析指令, 并根据指令规定的操作类型和操作对象, 执行指令规定的相关操作 如此重复, 周而复始, 直至执行完程序的所有指令, 从而实现程序的基本功能 3. 答 : 微型计算机系统的硬件主要由运算器 控制器 存储器 输入设备和输出设备组成 存储程序控制 的概念可简要地概括为以下几点 : 1 计算机 ( 指硬件 ) 应由运算器 存储器 控制器和输入 / 输出设备五大基本部件组成 2 在计算机内部采用二进制来表示程序和数据 3 将编好的程序和原始数据事先存入存储器中, 然后再启动计算机工作, 使计算机在不需要人工干预的情况下, 自动 高速的从存储器中取出指令加以执行, 这就是存储程序的基本含义 4 五大部件以运算器为中心进行组织 4. 答 : 采用二进制形式表示数据和指令 指令由操作码和地址码组成 将程序和数据存放在存储器中, 计算机在工作时从存储器取出指令加以执行, 自动完成计算任务 这就是 存储程序 和 程序控制 ( 简称存储程序控制 ) 的概念 指令的执行是顺序的, 即一般按照指令在存储器中存放的顺序执行, 程序分支由转移指令实现 计算机由存储器 运算器 控制器 输入设备和输出设备五大基本部件组成, 并规定了 5 部分的基本功能 5. 答 : 将运算器与控制器集成在一起, 称为微处理器 微处理器是微处理器的核心 微型计算机是由微处理器 存储器 输入 / 输出接口电路和系统总线构成的裸机系统 微型计算机系统是以微型计算机为主机, 配上系统软件和外设之后而构成的计算机系统 三者之间是有很大不同的, 微处理器是微型计算机的一个组成部分, 而微型计算机又是微型计算机系统的一个组成部分 1.3 计算机中数的表示及运算一 选择题 1. D 2. C 3. C 4. B 5. C 6. C 二 填空题 A B ~ 阶码 尾数 线性三 计算题 1. (1) D ; 39.AH (2) D ; 32.DH 123

20 (3) D ; B.D8H (4) D ; 2D.7H 2. (1) B ; D ; BCD (2) B ; D ; BCD (3) B ; D ; BCD (4) B ; D ; BCD 3. (1) [96] 原 = ; [96] 反 = ; [96] 补 = (2) [31] 原 = ; [31] 反 = ; [31] 补 = (3) [-42] 原 = ; [-42] 反 = ; [-42] 补 = (4) [-115] 原 = ; [-115] 反 = ; [-115] 补 = (1) -110D (2) -115D (3) -78D (4) D 1.4 微型计算机组成电路一 选择题 1.C 2.C 3.C 4.D 5.C 6.D 7.C 二 填空题 1. 多个部件之间公用的 信息交换的 芯片 插件或系统之间的 2. 内部总线 系统总线和外部总线 系统总线外部总线 3. 可同时传送的二进制数据的位数 在单位时间内总线上可传送的数据总量 4. 高速图形接口局部总线标准 _ 高速视频或高品质画面的显示 5. 支持即插即用的新型串行 使用方便 速度加快 连接灵活 独立供电 支持多媒体 6. 新型的高速串行 超过 100Kbit/s 的硬盘和视频设备三 简答题 1. 答 : 微机主板常用总线有系统总线 I/O 总线 ISA 总线 IPCI 总线 AGP 总线 IEEE1394 总线 USB 总线等类型 2. 答 :1) 具备即插即用特性, 为 USB 接口设计的驱动程序和应用程序可自动启动 成本低, 节省空间, 为开放性的不具备专利版权的理想工业标准 2) 可动态连接和重新配置外设, 支持热插拔功能 ; 3) 允许多台设备同时工作 ; 4) 可以向 USB 总线上的设备供电, 总线上的设备可以自备电源 ; 5) 通讯协议支持等时数据传输和异步消息传输的混合模式 ; 6) 支持实时语音 音频 和视频数据传输 3. 答 : 微型计算机总线的主要职能是负责计算机各模块间的数据传输, 对总线性能的衡量也是围绕这一性能而进行的 性能中最重要的是数据传输率, 另外, 可操作性 兼容性和性能价格比也是很重要的技术特征 具体来说, 总线的主要性能指标有以下几项 : (1) 总线宽度 : 以位数表示 (2) 标准传输率 Mb/s: 是总线工作频率与总线宽度的字节数之积 (3) 时钟同步 / 异步 : 总线中与时钟同步工作的称为同步总线 ; 与时钟不同步工作的称为异步总线 这取决于数据传输时源模块与目标模块间的协议约定 (4) 信号线数 : 这是地址总线 数据总线和控制总线线数的总和 信号线数和系统的复杂程度成正比关系 (5) 负载能力 : 以系统中可以连接的扩展电路板数表示 (6) 总线控制方法 : 包括突发传输 并发工作 自动配置 仲裁方式 逻辑方式 中断方式 124

21 等项内容 (7) 扩展板尺寸 : 这项指标对电路板生产厂家很重要 (8) 其他指标 : 电源是 5V 还是 3V, 能否扩展 64 位宽度等 任何系统的研制和外围模块的开发, 都必须服从其采用的总线规范 4. 答 :PCI 总线的优点 : (1) 高性能, 低成本 ; (2) 通用性强, 使用方便 ; (3)PCI 总线与处理器无关, 具有 32 位和 64 位数据总线, 采用集中式总线仲裁 支持多处理器系统, 通过桥 (Bridge) 电路兼容 ISA/EISA 总线, 具有即插即用的自动配置能力等一系列优势 ; (4) 可靠性高 数据完整性好 一 选择题 第 2 章十六位微处理器 /8086 微处理器 1. D 2.B 3. A 4. B 5.B 6. C 7.B 8.C 9. D 10. A 11. B 12. D 13. A 14.A 15. D 二 填空题 1. EU BIU CS IP H 1000H 0230H 分段 物理 相对段基地址的偏移量 程序 M 三 判断题 四 简述题 1. 答 : 按功能可分成两大部分 : 执行单元 (EU) 和总线接口单元 (BIU) (1) 执行单元 (EU): 由 8 个通道寄存器, 1 个标志寄存器 算术逻辑运算单元 ALU 及 EU 控 制单元组成 EU 从 BIU 指令队列寄存器中获得指令和待处理数据进行操作 将指令代码译 码后, 发出相应的控制信息, 将数据在 ALU 中进行运行, 运算结果的特征保留在标志寄存器 FLAG 中 (2) 总线接口单元 (BIU): 总线借口单元 BIU 包括 4 个段寄存器 1 个指令指针寄存器 1 个内部寄存器 1 个先入先出的 6 个字节 (8088 是 4 个字节 ) 的指令队列 总线控制逻辑电 路及 20 条地址线 当 EU 从指令队列中取走指令, 指令队列出现空字节时,BIU 即从内存中 去除后续的指令代码放入队列中 当 EU 需要数据时,BIU 根据 EU 给出的地址, 从指定的内 存单元或外设中取出数据提供给 EU 运算结束后, 将运算结果送入指定的内存单元或外设 如果指令队列的所有字节全空,EU 停止执行 直到指令队列中有指令, 并把指令传到 EU 单 元,EU 开始操作 一般情况下, 程序是顺序执行的 当遇到跳转指令时,BIU 就使指令队列 复位, 从新地址中取出指令并立即送给 EU 去执行 2. 答 : 作用是 : 在执行指令的同时从内存中取了一条指令或下几条指令, 取来的指令放在 指令队列中这样它就不需要象以往的计算机那样让 CPU 轮番进行取指和执行的工作, 从而提 125

22 高 CPU 的利用率 3. 答 :8086 的存储器空间最大可以为 220(1MB);8086 计算机引入了分段管理机制, 当 CPU 寻址某个存储单元时, 先将段寄存器内的内容左移 4 位, 然后加上指令中提供的 16 位偏移地址形成 20 位物理地址, 即在 8086 系统中, 物理地址 = 段地址 10H+ 偏移地址 4. 答 : 指令的物理地址为 21F00H;CS 值和 IP 值不是唯一的, 例如 :CS=2100H,IP=0F00H 5. 答 : 偏移地址为 54100H ( 物理地址 = 段地址 16+ 偏移地址 ) 6. 答 : 物理地址 : 在处理器地址总线上输出的地址称为物理地址 每个存储单元有一个唯一的物理地址 逻辑地址 : 在处理器内部 程序员编程时采用逻辑地址, 采用 段地址 : 偏移地址 形式 某个存储单元可以有多个逻辑地址, 即处于不同起点的逻辑段中, 但其物理地址是唯一的 逻辑地址转换成物理地址 : 逻辑地址由处理器在输出之前转换为物理地址 将逻辑地址中的段地址左移二进制 4 位 ( 对应 16 进制是一位, 即乘以 16), 加上偏移地址就得到 20 位物理地址 1 FFFFH:0=FFFF0H 2 40H:17H=00417H H:4500H=24500H 4 B821H:4567H=BC777H 7. 答 : 状态标志位有 6 个 :ZF SF CF OF AF PF 其意思是用来反映指令执行的特征, 通常是由 CPU 根据指令执行结果自动设置的 ; 控制标志位有 3 个 :DF IF TF 它是由程序通过执行特定的指令来设置的, 以控制指令的操作方式 8. 答 : 执行部件有 8 个 16 位寄存器,AX BX CX DX SP BP DI SI,AX BX CX DX 一般作为通用数据寄存器 SP 为堆栈指针存器,BP DI SI 在间接寻址时作为地址寄存器或变址寄存器 总线接口部件设有段寄存器 CS DS SS ES 和指令指针寄存器 IP 段寄存器存放段地址, 与偏移地址共同形成存储器的物理地址 IP 的内容为下一条将要执行指令的偏移地址, 与 CS 共同形成下一条指令的物理地址 9. 答 :1 由于 8088 只能传输 8 位数据, 所以 8088 只有 8 个地址 / 数据复用引脚 ; 而 8086 是按 16 位传输数据的, 所以有 16 个地址 / 数据复用引脚 ; 和 8088 的控制线引脚定义中第 28 和 34 腿也不一样, 在最小模式时,8088 和 8086 的第 28 引脚 (M/IO) 的控制信号高低电平相反, 而 8086 的第 34 腿为 BHE/S7,BHE 用来区分是传送字节 还是字,8088 的第 34 腿为 SS0, 用来指出状态信息, 不能复用 /8086CPU 引脚一 选择题 1. B 2. B 3.B 4.A 5.C 二 填空题 1. Ready T3 2. INTR NMI 屏蔽 3. 地 多处理器和单处理器系统 4.CPU 与其他部件之间传送数据 地址和控制信息 数据 地址 控制 5. A0 A19~A1 6. I/O 读 7. 0, 0, 1, 1 8.0, FFFFH

23 三 简答题 1. 答 :8086 执行了一个总线周期是指完成一次读或者写的操作, 基本总线周期由 T1~T4 的 4 个时钟周期组成, 也是典型的读存储器总线周期 在一个典型的读存储器总线周期中, 地址信号 ALE 信号在 T1 时刻有效, 信号 数据信号在 T2~T3 有效 2. 答 : 数据与地址引脚 3. 答 :INTR 是可屏蔽请求信号, 中断响应信号,NMI 是不可屏蔽中断请求信号,ALE 是地址锁存允许信号,HOLD 总线请求信号,HLDA 总线请求响应信号 4. 答 : RESET: 复位输入信号, 高电平有效 该引脚有效时, 将迫使处理器回到其初始状态 ; 转为无效时,CPU 重新开始工作 HOLD: 总线请求, 是一个高电平有效的输入信号 该引脚有效时, 表示其他总线主控设备向处理器申请使用原来由处理器控制的总线 NMI: 不可屏蔽中断请求, 是一个利用上升沿有效的输入信号 该引脚信号有效时, 表示外界向 CPU 申请不可屏蔽中断 INTR: 可屏蔽中断请求, 是一个高电平有效的输入信号 该引脚信号有效时, 表示中断请求设备向处理器申请可屏蔽中断 5. 答 : 考虑到芯片成本,8086/8088 采用 40 条引线的封装结构 40 条引线引出 8086/8088 的所有信号是不够用的, 采用地址 / 数据线复用引线方法可以解决这一矛盾, 从逻辑角度, 地址与数据信号不会同时出现, 二者可以分时复用同一组引线 /8086CPU 两种工作模式的配置一 选择题 1. C 2. C 3. B 4. A 5.D 二 简答题 1. 答 :8086 微处理器有最大和最小工作模式 在最小模式下 :8086 CPU 直接产生全部总线控制信号 (DT/R,DEN,ALE,M/IO) 和命令输出信号 (RD,WR,INTA) 并提出请求访问总线的逻辑信号 HOLD,HLDA 在最大工作模式下, 必须配置 8288 总线控制器, 并且根据 8086 提供的状态信号 S2,S1,S0, 输出读写控制命令, 可以提供灵活多变的系统配置, 以实现最佳的系统性能 2. 答 :8284A 是一个专用的时钟发生器, 产生 4.77MHz 的标准时钟信号 CLK 此时钟信号作为系统时钟, 并经 CLK 引脚直接送到 8086, 作为微处理器的时钟信号 同时 8284A 还对复位和就绪信号实现内部的时钟同步, 然后再输出, 实施对 8086 的控制 所以,8086/8088 系统用的时钟发生器产生恒定的时钟信号 CLK, 复位信号 RESET, 准备就绪信号 READY /8086CPU 主要操作一 选择题 1. C 2. B 3. B 二 判断题 三 简答题 1. 答 : 时钟周期是指 CPU 基本时间计量单位, 常用一个 T 状态表示, 总线周期是指一次总线操作时间 在 T3 之后加入等待周期 2. 答 : 当 8088 进行读写存储器或 I/O 接口时, 如果存储器或 I/O 接口无法满足 CPU 的读写时序 ( 来不及提供或读取数据时 ), 需要 CPU 插入等待状态 Tw 在读写总线周期的 T3 和 T4 之间插入 Tw 127

24 3. 答 :8086/8088 通过利用 ALE 信号的是否有效来解决地址线和数据线的复用问题 ALE 作为最小模式的地址锁存允许信号输出端, 在任何总线周期的 T1 状态,ALE 输出有效电平, 以表示当前在地址 / 数据复用总线上输出的是地址信息 /8086 系统的中断操作一 选择题 1. D 2.C 3. C 4. B 5.C 6.A 7.C 8.C 二 填空题 1. Iret 2. 1K 7856H:3412H 1. 中断系统 2. 引起中断的设备或事件 内部中断和外部中断 3. 除法出错 运算溢出和程序调试中设置断点 ~255 中断 4 中断入口段地址 中断入口偏移地址 5. 中断服务程序的入口地址中断向量表三 简答题 1. 答 : 有 8 级 ; 按照产生中断的方法可分为硬件中断和软件中断 2. 答 : 中断就是 CPU 在执行当前程序时由于内外部事件引起 CPU 暂时停止当前正在执行的程序而转向执行请求 CPU 暂时停止的内外部事件的服务程序, 该程序处理完后又返回继续执行被停止的程序 ; 中断向量是中断处理子程序的入口地址 ; 地址范围是 00000H-003FFH 3. 答 : 中断向量表的功能是当中断源发出中断请求时, 即可查找该表, 找出其中断向量, 就可转入相应的中断服务子程序 1AH 在中断向量表的位置是 1AH 4=68H 在中断向量表 0000H:0068H 处 ;20H 在中断向量表的位置是 80H 在中断向量表 0000H:0080H 处 4. 答 :3 种, 软件查询确定优先级, 硬件优先级排队电路确定优先级, 中断屏蔽接口电路 5. 答 :CPU 响应可屏蔽中断的条件是 : (1)CPU 必须处于开中断状态 IF=1 (2)CPU 现行指令执行结束 (3) 没有其他优先级高的中断请求 ( 没有内部中断, 没有非屏蔽中断, 没有总线请求 6. 答 : 中断请求 : 外设通过硬件信号的形式 向处理器引脚发送有效请求信号 中断响应 : 在满足一定条件时, 处理器进入中断响应总线周期 关中断 : 处理器在响应中断后会自动关闭中断 断点保护 : 处理器在响应中断后将自动保护断点地址 中断源识别 : 处理器识别出当前究竟是哪个中断源提出了请求, 并明确与之相应的中断服务程序所在主存位置 现场保护 : 对处理器执行程序有影响的工作环境 ( 主要是寄存器 ) 进行保护 中断服务 : 处理器执行相应的中断服务程序, 进行数据传送等处理工作 恢复现场 : 完成中断服务后, 恢复处理器原来的工作环境 开中断 : 处理器允许新的可屏蔽中断 中断返回 : 处理器执行中断返回指令, 程序返回断点继续执行原来的程序 7. 答 : 在中断响应过程中,CPU 向 8259A 的 INTR 引脚发 2 个负脉冲 作用 : 第一个负脉冲通知 8259A,CPU 允许中断请求, 要求送中断类型 ; 第二个负脉冲,8259 传输中断类型码 一 选择题 第 3 章存储器系统 3.1 存储器的概述 128

25 1. D 2. D 3. C 4. C 5. C 二 填空题 1. 二进制信息总量 二进制信息 越强 2. 通过指令可随机地对存储单元进行访问 静态 RAM 动态 RAM 动态 RAM 3. 高速小容量 CPU 主存 CPU 正在使用的指令和数据 提高 CPU 访问存储器的存取速度, 减少处理器的等待时间三 判断题 1. ( ) 2. ( ) 3. ( ) 4. ( ) 四 简答题 1. 答 :1) 存储容量 存储器可以存储的二进制信息总量称为存储容量 存储容量有两种表示方法 : ⑴ 位表示方法 以存储器中的存储地址总数与存储字位数的乘积表示 如 1K 4 位, 表示该芯片有 1K 个单元 (1K=1024), 每个存储单元的长度为 4 个二进制位 ⑵ 字节表示方法 以存储器中的单元总数表示 ( 一个存储单元由 8 个二进制位组成, 称为一个字节, 用 B 表示 ) 如 128B, 表示该芯片有 128 个单元 2) 存储速度 存储器的存储速度可以用两个时间参数表示, 一个是 存取时间, 定义为从启动一次存储器操作到完成该操作所经历的时间 ; 另一个是 存储周期, 定义为启动两次独立的存储器操作之间所需的最小时间间隔 3) 可靠性 存储器的可靠性用平均故障间隔时间 MTBF 来衡量 MTBF 越长, 可靠性越高 4) 性能 / 价格比 这是一个综合性指标, 性能主要包括上述三项指标 : 存储容量 存储速度和可靠性, 对不同用途的存储器有不同的要求 2. 答 :RAM 有两种,(1)SRAM( 静态 RAM), 它采用触发器电路构成一个二进制位信息的存储单元, 这种触发器一般由 6 个晶体管组成, 它读出采用单边读出的原理, 写入采用双边写入原理 ;(2) DRAM( 动态 RAM), 它集成度高, 内部存储单元按矩阵形式排列成存储体, 通常采用行, 列地址复合选择寻址法 ROM 有 5 种, 固定掩摸编程 ROM 可编程 PROM 紫外光擦除可编程 EPROM 电可檫除的可编程 EEPROM 和闪速存储器 /8088 系统存储器的组织一 填空题 1.D7~D0 2.,IO/ 3.7FH 4. 奇 偶 二 判断题并改正 1., 每个段小于等于为 64KB , 内存直接与 CPU 进行程序和数据的交换

26 6., 可以通过紫外线擦除写入数据 7. 8., 微处理器进行读操作, 就是把数据从主存或外设读到微处理器 9.,EPROM 只能通过紫外线向内部写入数据 10. 三 简答题 1. 存储示意图 : 地址 存储空间 00130H 0DAH 00131H 31H 00134H 7FH 00135H 5EH 2. 答 :30022H 字节单元的内容为 ABH;30024H 字节单元的内容为 EFH 30021H 字单元的内容为 AB34H;30022H 字单元的内容为 CDABH 3. 答 :3017H:000AH 3015H:002AH 和 3010H:007AH 的存储单元的物理地址都是 3017AH 4. 答 :8086 是一个 16 位的结构, 采用分段管理办法可形成超过 16 位的存储器物理地址, 扩大对存储器的寻址范围 (1MB,20 位地址 ) 若不用分段方法,16 位地址只能寻址 64KB 空间 5. 答 :8086 微处理器 CPU 中寄存器都是 16 位,16 位的地址只能访问大小为 64KB 以内的内存 8086 系统的物理地址由 20 根地址线形成, 怎样用 16 位数据处理能力实现 20 位地址的寻址呢? 要做到对 20 位地址空间进行访问, 就需要两部分地址, 在 8086 系统中, 就是由段地址和偏移地址组成的 而这两个地址都是 16 位, 将这两个地址采用相加的方式组成 20 位地址去访问存储器 在 8086 系统的地址形成中, 当段地址确定后, 该段的寻址范围就已经确定, 其容量不大于 64KB 同时, 通过修改段寄存器的内容, 可达到逻辑段在整个 1MB 空间中浮动 各个逻辑段之间可以紧密相连, 可以中间有间隔, 也可以相互重叠 采用段基址和偏移地址方式组成物理地址的优点是 : 满足对 8086 系统的 1MB 存储空间的访问, 同时在大部分指令中只要提供 16 位的偏移地址即可 3.3 存储芯片与 CPU 的连接一 选择题 1. B 2.A 3.A 二 填空题 三 简答题 1. 答 : 1 全译码方式 : 存储器芯片中的每一个存储单元对应一个唯一的地址 译码需要的器件多 ;2 部分译码方式 : 存储器芯片中的一个存储单元有多个地址 译码简单 ; 线选 : 存储器芯片中的一个存储单元有多个地址 地址有可能不连续 不需要译码 2. 答 :(1) 位扩展 : 当存储器的容量要求与芯片的容量相同, 但位数不同, 就需要进行位上扩展 (2) 字扩展 : 当存储器的位数与芯片的相同, 但是容量不足时, 就需要在字上扩展 130

27 (3) 字位同时扩展 : 是指在内存容量和数据位长宽两个方向上同时扩展 当需要组成的内存容量为 M N 时, 若已有芯片为 m n, 所需芯片数 =(M m) (N n) 3. 答 : 需要 16 片芯片 ; 其中 A11-A0 参与片内寻址 ;A12 做芯片组的片选信号 4. 答 :512K 8 需要 19 条地址线,8 条数据线 1K 4 需要 10 条地址线,4 条数据线 16K 8 需要 14 条地址线,8 条数据线 64K 1 需要 14 条地址线,1 条数据线 5. 答 : 最后一个单元的地址是 :4800H 四 应用题 1. 答 : 第一组的基本地址是 :0000H-03FFH 第二组的基本地址是 :4000H-43FFH 第三组的基本地址是 :8000H-83FFH 第四组的基本地址是 :0C000H-0C3FFH 每一组都有重叠区, 每组重叠区 15 个 2. 解 : ⑴(1M 16)/(128K 16)=8 若每个模块板为 128K 16 位, 共需 8 个模块板 ; ⑵(128K 16)/(16KB)=16 每个模块板内共有 16 个 SRAM 芯片 ; ⑶ 主存共需 8 16=128 个 RAM 芯片 ; 将 CPU 发出地址的高 3 位 A19 A18 A17 经 3:8 线译码器译码后选择各模块板 3. 答 :(1)EPROM 单片容量为 4K 8 位,SRAM 单片容量为 2K 8 位 (2)74LS138 的作用是译码 (3)ERROM2 的地址范围为 :F9000H~F9FFFH 解释 :A19 A18 A17 A16 A15 均为 1; 由于 ERROM2 由 Y1 连接, 译码器输入端 A14 A13 A12 为 001,A11-A0 为片内地址, 所以 20 位地址是 : 答 : A19 A18 A17 A16 A15 A14 A13 A12 A0 0 0 第一组范围 : 即为 :3C000H 3EFFFH A19 A18 A17 A16 A15 A14 A13 A12 A0 0 0 第二组范围 : 即为 :32000H 33FFFH 5. 答 : 分配给 32K 8ROM 芯片的地址为 :F8000H-FFFFFH; 分配给 8K 8ROM 的地址为下述 4 组地址之一 : E0000H~E1FFFH E2000H~E3FFFH E4000H~E5FFFH E6000H~E7FFFH 6. 答 :(1)8K 8bit (2) 因为有两根地址线没有用到, 所以有 4 种地址范围 : DA000H~DBFFFH; DE000H~DFFFFH; FA000H~FBFFFH; FE000H~FFFFFH 7. 参考答案 : 连接图 : 2.16KB 131

28 3. 所用 2 片 RAM 的地址范围为 :8000H~8FFFH 和 C000H~FFFFH 4. 1 确定读写信号片选是否正常 ; 2 地址线和数据线是否正常 ; 3 用示波器检查 RAM 各点是否正常 第 4 章 8088/8086 指令系统 /8086 指令系统的寻址方式一 简答题 1. 答 : 数据操作数的寻址方式有七种, 分别为 : 立即寻址, 寄存器寻址, 直接寻址, 寄存器间接寻址, 寄存器相对基址变址和相对基址变址寻址 其中寄存器寻址的指令执行速度最快 2.(1) 答 : 寻址方式为直接寻址 ;PA=60064H (2) 答 : 寻址方式为直接寻址 ; PA=60005H (3) 答 : 寻址方式为寄存器间接寻址 ;PA=60100H (4) 答 : 寻址方式为寄存器间接寻址 ;PA=60300H (5) 答 : 寻址方式为寄存器间接寻址 ;PA=50400H (6) 答 : 寻址方式为寄存器间接寻址 ;PA=61200H (7) 答 : 寻址方式为寄存器相对寻址 ;PA=61410H (8) 答 : 寻址方式为寄存器相对寻址 ;PA=60305H (9) 答 : 寻址方式为基址变址寻址 ;PA=60400H (10) 答 : 寻址方式为相对基址变址寻址 ;PA=61505H 3.(1) 答 : 有效地址为 EA=C237H (2) 答 : 有效地址为 EA=637DH (3) 答 : 有效地址为 EA=125B4H (4) 答 : 有效地址为 EA=8E18H (5) 答 : 有效地址为 EA=1504FH 4. 答 : 源操作数目的操作数 (1) MOV AX,100H 立即数寄存器 (2) MOV CX,AX 寄存器寄存器 (3) ADD [SI],1000 立即数寄存器间接 (4) SUB BX,[SI+100] 变址寄存器 (5) MOV [BX+300],AX 寄存器变址 (6) AND BP,[DI] 寄存器间接寄存器 4.2 汇编指令一 选择题 1. A 2. D 3. C 4. D 5. C 6. A 7. B 8. C 9. C 10. B 11.B 12. A 13.A 14.C 15.C 二 简答题 1. 答 :(1) 立即数不能传送到 DS (2) 栈操作, 操作数类型必须为字类型 (3)SP 寄存器不能做间址寄存器 (4)I/O 指令的直接寻址, 地址只能为 8 位 (5) 正确 (6) 移位超过一位时, 应采用 CL 寄存器间址 132

29 (7) 16 进制数以字母开头时应在前面加 0 (8) 加法指令 ADD, 缺少一个操作数 (9) I/O 指令操作数只能用 AX AL 提供 (10) 符号扩展指令为隐含操作数 (11) 加法指令应为双操作数指令, 立即数不能做目的操作数 (12) 源操作数形式错误,SI 和 DI 不能同时做为间址寄存器 (13)AX 不能做为间址寄存器 (14)I/O 指令操作数只能用 AX AL 提供 (15) 移位指令, 位移位数大于 1 时, 应用 CL 来指明 (16) 立即数不能做为目的操作数 (17) 源 目的操作数的类型不一致 (18) 传送指令中, 两个操作数不能同时为存储器操作数 (19) 交换指令的操作数不能使用立即数 (20) 传送指令的源操作数, 不能使用立即数 (21) 源操作数不能为立即数, 必须是存储器操作数 (22)I/O 指令端口地址表示错误, 只能用 8 位立即数或 DX 间址 (23) 源操作数不能为寄存器操作数 (24) 乘法指令的目的操作数是隐含的, 不能出现在指令中 (25)BX 和 BP 不能同时为间址寄存器 (26) 比较指令的两个操作数不能同时为存储器操作数 (27)I/O 指令中, 源操作数只能使用 AL 或 AX 寄存器 (28) 与 指令中, 目的操作数不能使用立即数 (29) 移位指令, 移位位移不能用 CX 寄存器指明 (30) 正确 (31)CS 段寄存器不能做为目的操作数 (32) 源 目的操作数的类型不一致 (33) 没有指定存储器操作数类型 2. 答 : (SP)=1FFEH,(AX)=5000H, (BX)=5000H 3. 答 :(1)(AL)=7AH,OF=0 SF=0 ZF=0 AF=0 PF=0 CF=0 (2) (AL)=0DCH,OF=0 SF=1 ZF=0 AF=1 PF=0 CF=1 (3)(AL)=0B8H,OF=0 SF=1 ZF=0 AF=0 PF=1 CF=1 (4)(AL)=23H,OF=0 SF=0 ZF=0 AF=1 PF=0 CF=1 (5) (AL)=0E9H,OF=1 SF=1 ZF=0 AF=0 PF=0 CF=1 4. 答 :(1) 未指明数据类型, 改为 :MOV BYTE PTR[1200],23H (2) 立即数不能作为目标操作数, 改为 :MOV [1020H],CX (3) 两操作数不能均是内存单元 (4) IP 不能在指令中出现 (5) 操作数必须是 16 位, 改为 :PUSH AX (6) CX 不能作为端口地址的间接访问寄存器, 改为 :OUT DX,AL (7) 直接端口地址写法错误, 改为 :IN AL,80H (8) 两操作数的数据类型不一致, 改为 :MOV CX,3300H 5. 答 :(1) (AX)=1200H (2) AX)=0100H (3) (AX)=4C2AH 133

30 (4) (AX)=3412H (5) (AX)=4C2AH (6) (AX)=7856H (7) (AX)=65B7H 6. 答 :(1) ADD DX, BX (2) ADD AL, [BX][SI] (3) ADD [BX+0B2H], CX (4) ADD WORD PTR [0524H], 2A59H (5) ADD AL, 0B5H 7. 答 : 不正确 正确的方法是使用两条指令实现 : MOV AL, [300OH] MOV [2000H,AL 8. 三种方法是 : (1) 使用乘法指令 : MOV BL,10 MUL BI, (2) 使用移位指令 : SHL AL,1 MOV BL,AL SHL AL,2 ADD AL,BL (3) 使用加法指令 : ADD AL,AL MOV BL,AL ADD AL,AL ADD AL,AL ADD AL,BL 9. 答 : 该段程序实现了字节数据 X 乘 10, 结果在 AX 中 10. 答 : 程序段如下 (1)AND AL,0F0H (2)OR BL,0FH (3)XOR CL,0FH (4) TEST DL,03H JZ NEXT MOV BL,1 JMP NEXT1 NEXT: MOV BL,0 NEXT1:HLT 11. 答 : 程序段如下 MOV AX,[3000H] ADD [2000H],AX MOV AX,[3002H] ADC [2002H],AX 12. 答 : (2000H)=39H,(2001H)=00H 将(2000H),(2001H) 两相邻单元中存放的未组合型 134

31 BCD 码压缩成组合型 BCD 码, 并存入 (2000H) 单元,0?(2001H) 13. 答 : (l)(cl)= F6H (2)(1E4F6H)= 78H (3)(BX)=0056H,(AX)=1E40H 14. 答 :MOV BX, AX AND BX, 8000H MOV CL, 4 SHL AX, CL AND AX,7FFFH OR AX, BX 15. 答 : TEST BX, B JZ ZERO MOV AL,01H HLT ZERO: MOV AL,0 HLT 16. 答 : 将 DX: AX 中的双字左移 4 位 ( 乘 16) 第 5 章汇编语言伪指令 5.1 汇编语言语句的格式一 选择题 1.B 2. B 3.C 4.B 5. C 6.A 7. D 8.C 9.B 二 填空题 1. 伪指令 2. 操作码 操作数 ( 地址码 ) 三 分析题, 1. 改正后 : STAKSG SEGMENT DB 100 DUP(?) STAKSG ENDS DTSEG SEGMENT DATA1 DB? DTSEG ENDS CDSEG SEGMENT MAIN PROC FAR ASSUME CS: CDSEG, DS: DTSEG, SS: STAKSG START: MOV AX, DTSEG MOV DS, AX MOV AL, 34H ADD AL, 4FH 135

32 MOV DATA1, AL MOV AH, 4CH INT 21H MAIN ENDP CDSEG ENDS END 2. 程序框图 ( 流程图 ) 如下 : 四 简答题 1. 答 : 助记符 : 人们采用便于记忆 并能描述指令功能的符号来表示机器指令操作码, 该符号称为指令助记符 汇编语言 : 用助记符表示的指令以及使用它们编写程序的规则就形成汇编语言 汇编语言程序 : 用汇编语言书写的程序就是汇编语言程序, 或称汇编语言源程序 汇编程序 : 汇编语言源程序要翻译成机器语言程序才可以由处理器执行 这个翻译的过程称为 汇编, 完成汇编工作的程序就是汇编程序 (MASM.EXE) 2. 参考答案 : DATA1 SEGMENT DATA1 ENDS STACK1 SEGMENT STACK1 ENDS COSEG SEGMENT ASSUME DS:DATA1,SS:STACK1,CS:COSEG START:MOV AX,DATA1 MOV DS,AX MOV AX,STACK1 MOV SS,AX MOV AH,4CH INT 21H COSEG ENDS END 5.2 汇编语言伪指令一 选择题 1. D 2. D 3. B 4. D 5. A 6. C 二 分析题 1. 答 :X 不能多次赋值,Y 可以多次赋值 2. 答 :(1) 指出程序段的功能将两个字节合并为一个字节, 即两个非压缩 BCD 码合并为一个压缩 BCD 码 ; (2) 程序执行后,AL= 68H 3. 答 :4 字节 6 字节 136

33 4 2 5=40 字节 5 3 4=60 字节 4. 答 :(1) 正确 (2) 错误 宏不能精简目标代码 (3) 错误 高级语言程序经编译或解释后直接转换为目标代码 (4) 正确 5. 答 :(1) 错误 K1 是符号常数, 在此处相当于立即数 100, 故不能做目的操作数 (2) 正确 (3) 正确 (4) 错误 A1 A2 都是字节变量, 相当于两个存储器单元, 故不能同时出现在一条指令中直接进行比较 (5) 错误 用 EQU 定义的符号不能重新赋值 6. 答 : (AX)=40 一 程序分析题 1. 答 : 第 6 章汇编语言程序设计 6.1 汇编语言程序结构 2. 答 : 该程序段的功能 : 键盘输入小写字符, 在屏幕上显示相应的大写字符 键盘接收字 符, 屏幕显示字符, 返回 DOS 系统 3. 答 : 如果地址为 5FH 的外设输入到 AL 中的数据的最高位 =1, 则 (AH)= 0, 否则,(AH)= 0FFH 6.2 三种程序结构编程 一 选择题 1.A 二 简答题 答 : 汇编语言程序的开发有 4 个步骤 : 编辑 : 用文本编辑器形成一个以 ASM 为扩展名的源程序文件 汇编 : 用汇编程序将 ASM 文件转换为 OBJ 模块文件 连接 : 用连接程序将一个或多个目标文件链接成一个 EXE 或 COM 可执行文件 调试 : 用调试程序排除错误, 生成正确的可执行文件 三 编程题 1. 参考答案 : DATA SEGMENT X DB 15 S DB? DATA ENDS CODE SEGMENT ASSUME DS:DATA, CS:CODE START: MOV AX,DATA MOV DS,AX MOV AL,X TEST AL,80H 137

34 JZ LL0 SAL AL,1 ;2X JMP LL10 LL0: CMP AL,10 JG LL1 MOV BL,AL SAL AL,1 ;3X ADD AL,BL JMP LL10 LL1: SAL AL,1 ;4X SAL AL,1 LL10: MOV S,AL MOV AH,4CH INT 21H ; 返回 DOS CODE ENDS END START ; 汇编结束 2. 参考答案 : STACK SEGMENT STACK ; 定义堆栈段 DB 100 DUP(?) ; 开辟 100 个存储单元 STACK ENDS ; 堆栈段结束 CODE SEGMENT ; 定义代码段 ASSUME CS:CODE,SS:STACK START: MOV AH,01H ;1 号调用, 从键盘输入一字符存入 AL INT 21H ; 输入并回显 MOV BL,AL ; 保存从键盘输入字符 CMP AL, a ; 与 a 的 ASCII 码比较 JB L3 ; 低于 a 的 ASCII 码, 转 L3( 退出 ) CMP AL, z ; 与 z 的 ASCII 码比较 JA L3 ; 高于 a 的 ASCII 码, 转 L3( 退出 ) SUB AL,20H ; 将 AL 中字符的 ASCII 码减去 20H 变成大写字母 MOV BL,AL ; 保存结果 MOV DL, - ; 显示字符 - 送 DL MOV AH,02H ;2 号调用, 在显示器上显示字符 - INT 21H ; 显示 - MOV DL,BL ; 结果 ( 大写字母 ) 送 DL MOV AH,02H ;2 号调用, 在显示器上显示 DL 中的内容 ( 大写字母 ) INT 21H ; 显示大写字母 MOV DL,20H ; 空格送 DL () MOV AH,02H ;2 号调用, 在显示器上显示 DL 中的内容 ( 大写字母 ) INT 21H ; 显示空格 ( 使两结果用空格隔开 ) JMP START ; 不是 回车符, 转 START( 继续 ) L3: MOV AH,4CH ; 是 回车符, 设置返回 DOS 功能码 INT 21H ; 返回 DOS 138

35 CODE ENDS ; 代码段结束 END START ; 程序汇编结柬 3. 参考答案 : 程序段如下 MOV BX,2000H MOV CX,9 MOV AL,[BX] N2:INC BX CMP AL,[BX] JGE N1 MOV AL,[BX] N1:LOOP N2 MOV [2000H],AL HLT 4. 参考答案 : DATA SEGMENT DATA1 DB 00H DATA2 DB 00H DATA ENDS CODE SENGMENT ASSUME CS:CODE,DS:DATA START: MOV AX, DATA MOV DS,AX MOV AH, 1 INT 21H ; 输入一个十六进制数 0~9,A~F MOV DATA1, AL CMP AL, 40H JB L1 SUB AL, 31H ;10H~15H,A~F 的数转换成 BCD 码 JMP L2 L1: SUB AL, 30H ;00H~09H;0~9 转换成 BCD 码 L2: MOV BL, AL AND AL, 0F0H MOV CL, 4 SHR AL, CL ADD AL, 30H;BCD 码的高位转换成字符 MOV DL, AL MOV AH, 2 INT 21H ; 显示高位 AND BL, 0FH ADD BL, 30H ;BCD 码的低位转换成字符 MOV DL, BL MOV AH, 2 INT 21H ; 显示低位 139

36 MOV AH, 4CH INT 21H CODE ENDS END START 4. 参考答案 : DATA SEGMENT DA1 DD H COUNT DB 00H DATA ENDS CODE SENGMENT ASSUME CS:CODE,DS:DATA START: MOV AX, DATA MOV DS, AX MOV SI, OFFSET DA1 MOV BL, 00H MOV BH, 8 MOV CX, 4 A2: MOV AL, BYTE PTR [SI] A1: ROR AL, 1 JNC L1 INC BL L1: DEC BH JNZ A1 INC SI LOOP A2 MOV COUNT, BL MOV AH, 4CH INT 21H CODE ENDS END START 6. 参考答案 : Code segment Assume CS:Code abc: mov ah,1 int 21h cmp al, a jb stop cmp al, z ja stop sub al,20h mov dl,al mov ah,2 int 21h jmp abc 140

37 stop: mov ah,4ch code int 21h end ends 7. 参考答案 : START: IN AL,71H ; 将 71H 端口的字节读入 AL CLC CMP AL,10 ; 清除 CF JC LP1 ; 小于 10 转 LP1 CMP AL,20 JC LP2 ; 小于 20 大于等于 10 转 LP2 MOV BL,0FFH LP3: MOV AL,BL OUT 73H,AL ; 将 AL 的 0FFH 输出到 73H 端口 HLT LP1: MOV BL,00 JMP LP3 LP2: MOV BL,88H JMP 一 选择题 LP3 1. A 2. A 3. A 4. A 5.A 二 填空题 第 7 章输入输出系统 7.1 输入输出接口概念 1. 外设与 CPU 通信的控制部件, CPU 与外设间传递信息的 2. 总线和外部设备 信息转换和数据传递 数据信息 控制信息 状态信息 3. I/O 端口与内存统一编址和 I/O 端口独立编址 4. CPU 与外设 CPU 小批量慢速数据输入 / 输出设备传送 5. 内存与外设 DMA 控制器 三 简答题 1. 答 : 位于主机与外设之间, 用来协助完成数据传送和控制任务的逻辑电路称为接口电路, 接口电路对输入 / 输出过程起缓冲和联络作用 接口的功能是有, 数据缓冲功能, 联络功能, 寻址功能, 预处理功能, 中断管理功能 2. 答 :I/O 端口和存储器统一编址 ;I/O 端口单独编址 8086 系统采用 I/O 端口单独编址 方式 3. 答 : 因为许多接口设备中, 在工作原理, 驱动方式, 信息格式以及工作速度方面彼此相差 很大, 因此为了进行速度和工作方式的匹配, 并协助完成二者之间数据传送控制任务 4. 答 : 数据输入寄存器, 数据输入寄存器, 状态寄存器和控制寄存器 数据端口能对传送 数据提供缓冲, 隔离, 寄存的作用 ; 状态寄存器用来保存外设或接口的状态 ; 控制寄存器 用来寄存 CPU 通过数据总线发来的命令 5. 答 : 输入 / 输出指令和访问存储器的指令明显区分开, 使程序清晰, 可读性好 ; 而且 I/O 指令长度短, 执行的速度快, 也不占用内存空间,I/O 地址译码电路较简单 不足之处是 CPU 指令系统中必须有专门的 IN 和 OUT 指令, 这些指令的功能没有访问存储器的指令的功能强 ; I/O 端口数目有限 另外,CPU 要能提供区分存储器读 / 写和 I/O 读 / 写的控制信号 141

38 6. 答 : 外设接口译码电路各接口芯片的地址如下表 : 7.2 数据传送控制方式一 选择题 1. C 2.A 3.D 二 简答题 1. 答 : 程序控制方式 : 特点是依靠程序的控制来实现主机和外设的数据传送, 可分为无条件传送方式和查询方式. 中断控制方式 : 每次输入和输出一个数据,CPU 都要检查外设的状态 直接存储器存取控制方式 : cpu 不参加数据传送, 而是由 DMA 控制器来实现内存与外设, 外设与外设之间的直接传递 通道方式 : 可以实现对外围设备的统一管理和外围设备与内存之间的数据传送 外围处理机方式 : 由 PPU 独立于主机工作, 减少了 CPU 控制外设的负担 2. 答 : 查询传送方式 CPU 通过程序不断查询相应设备的状态, 状态不符合要求, 则 CPU 需要等待 ; 只有当状态信号符合要求时,CPU 才能进行相应的操作 中断方式提高了计算机系统中信息处理的并行和处理器效率, 中断可以实现同步操作, 实时处理等功能 3. 解 : 一次 DMA 传送过程由传送前的预处理 数据传送 传送结束 3 个阶段组成 预处理是由 CPU 完成的 当 CPU 执行到读写 I/O 设备调用语句时, 启动 DMA 传送过程, 向 DAM 卡送入设备识别信号 启动设备, 测试设备运行状态, 送入内存地址初值, 传送数据个数,DMA 的功能控制信号等, 之后,CPU 继续执行原来程序 数据传送在 DMA 卡控制下自动完成 DMA 卡向 CPU 发出请求总线使用权的信号, 若总线空闲, 总线控制器将送响应回答信号给 DMA 卡,DMA 卡取得总线使用权, 清 0 DMA 请求触发器以撤消请求总线的信号, 并启动数据传送过程 DMA 在传送过程中还要完成对内存地址计数器和数据数量计数器的计数操作, 并通过检查数据数量计数器是否为 0, 决定要启动下一次传送, 还是结束本批全部数据的传送过程 传送结束处理, 是由数据数量计数器的值为 0 引发出来的 当数据数量计数器的值为 0 时, DMA 将向 CPU 发出中断请求信号,CPU 响应这一请求后, 转入中断服务程序 ; 检查是否结束数据传送 4. 答 : 异步通信的帧格式是用一个起始位表示传送字符的开始, 用 1-2 个停止位表示字符结束 起始位与停止位之间是数据位, 数据位后是校验位, 数据的最底位紧跟起始位, 其他各位顺序传送 ; 同步通信的帧格式是在每组字符之前必须加上一个或多个同步字符做为一个信息帧的起始位 5. 答 : 波特率是单位时间内通信系统所传送的信息量 需要多长时间 =1024/(1200/10) =8.53s 6. 答 : MOV SI,2000H ; 初始化数据区地址 MOV AX,1000H MOV DS, AX LL: MOV DX,0FFE2H IN AX,DX ; 读状态 TEST AL,01H ; 测试是否满足就绪? JZ LL ; 不满足, 继续读状态 MOV DX,0FFE0H ; 就绪, 准备输入数据 IN AX,DX ; 从输入接口读取数据 142

39 MOV [SI],AX ; 存数据 INC SI LOOP LL ; 数据没有输入完, 继续 7.3 并行通讯和并行接口芯片 8255 一 选择题 1. A 2. B 3.A 4.D 5.D 二 简答题 1. 答 : 主要特点 : 数据并行传输, 传输速度快, 但距离较近 主要功能 : 并行传输数据, 在主机与外设之间起到数据缓冲和匹配的作用 2. 答 :8255A 有 3 种工作方式 : 称为方式 0, 方式 1 和方式 2 其中 A 口可以工作在 3 种方式中的任一种 ;B 口只能工作在方式 0 和方式 1;C 口通常作为 控制信号使用, 配合 A 口和 B 口的工作 1 方式 0: 基本的输入输出方式,A 口 B 口和 C 口 (C 口分为 2 个 4 位使用 ) 都可提供简单的 输入和输出操作, 对每个口不需要固定的应答式联络信号 在程序中可直接使用输入指令 (IN) 和输出 (OUT) 指令对各口进行读写 方式 0 一般用于无条件传送的场合, 不需要应答式联络 信号, 外设总是处于准备好的状态 2 方式 1: 选通输入 / 输出方式, 当 A 口和 B 口进行输入输出时, 必须利用 C 口提供的选通 和应答信号 而且这些信号与 C 口中的某些位之间有着固定的对应关系, 这种关系是硬件本 身决定的不是软件可以改变的 由于工作在方式 l 时, 要由 C 口中的固定位作为选通和应答 等控制信号, 因此称方式 1 为选通的输入 / 输出方式 3 方式 2: 带选通的双向传输方式,8255A 可以向外设发送数据, 同时 CPU 通过这 8 位数据 线又接收外设的数据 因此称为双向的传输方式 只能适用于 A 口 一个 8 位的双向口 (A 口 ) 和 1 个 5 位的控制口 (C 口 ) A 口的输入和输出都可以被锁存 5 位的控制口用于传送 8 位双向口的控制和状态信息 三 应用编程题 1. 答 : 由题知应为 H=B9H MOV AL,B9H MOV DX,006CH OUT DX,AL 2. 答 :MOV DX,00C0H ; 端口地址 MOV AL, ; 对 PC6 置 1 OUT DX,AL MOV AL, ; 对 PC4 置 0 OUT DX,AL 3. 答 :(1)MOV AL, B ; A 和 B 组方式 0,A 和 C 口输入口,B 口作为输出口 MOV DX, P1 OUT DX, AL (2)MOV AL, B ; A 组置成方式 2,B 组置成方式 1,B 口作为输出口 MOV DX, P1 OUT DX, AL (3)MOV AL, B ; A 口方式 1 输入,PC6 和 PC7 输出,B 口方式 1 输入 MOV DX, P1 OUT DX, AL 4. 答 : MOV AL, 80H 143

40 OUT 8BH,AL MOV AL,0DH OUT 8BH,AL MOV AL,06H OUT 8BH,AL 5. 答 :(1)MOV DX,203H MOV AL, B OUT DX,AL (2) MOV DX,202H IN AL,DX MOV AH,AL TEST AL,80H JNZ NEXT1 MOV DX,203H MOV AL, B ; 对 PC1 置位 OUT DX,AL NEXT1:MOV AL,AH TEST AL,40H JZ NEXT2 MOV AL, B ; 对 PC0 复位 MOV DX,203H OUT DX,AL NEXT2: 6. 答 :(1)PORTA EQU 60H PORTB EQU 62H PORTC EQU 64H PCTRL EQU 66H (2) TAB1 DB 0C0H, ; 字型表 MI1 PROC MOV AL,88H OUT PCTRL,AL ; 初始化 8255 IN AL,PORTC ; 读开关状态 MOV CL,4 SHR AL,CL ; 转成低 4 位 LEA BX, TAB1 XLAT TAB1 ; 查表 OUT PORTA,AL ; 显示输出 RET MI1 ENDP 7. 答 :(1) 控制字为 = =94H MOV AL, 94H OUT 83H, AL (2) 端口地址的译码电路, 如图所示 144

41 8. 答 : 地址 :208H~20BH 控制字 = =90H,A 口发生 0 输入,B 口方式 0 输出 程序段如下 : MOV DX, 20BH MOV AL, 90H OUT DX, AL MOV DX, 108H IN AL, DX ; 读 A 口 INC DX OUT DX, AL ; 写 B 口 9. 答 : 控制字 = =84H,B 口方式 1 输出 允许 B 口中断, 可以查询中断指示状态 :PC2 置 1, 则置位字 = B=05H MOV AL, 84H OUT 93H, AL ; 写控制字 MOV AL, 05H OUT 93H, AL ; 写中断允许 LEA SI, Buf MOV CX, 1000 L1: MOV AL, [SI] ; 将数据传送至 AL OUT 91H, AL ; 从 A 口输出数据, 使变为低电平 L2: IN AL, 92H ; 从 C 口读取状态字 ; 打印机取走数据后, 变为低电平, 并将变为高电平 AND AL, 01H ; 判断 B 口是否提出中断申请 JZ L2 ; 如果没有, 继续检测状态字 INC SI ; DEC CX JNZ L1 HLT 10. 分析 : 由于 8255A 的 A 口以方式 1 工作, 因此将 8255A 的 PA7~PA0 与打印机的数据线 D7~D0 连接,PC7 作为输出信号与打印机的数据选通信号引脚相连,PC6 作为输入信号 与打印机的应答信号相连,PC4 用来查询打印机的忙信号 BUSY 的状态 在这里应该注意, 当 CPU 输出数据时,8255A 产生一个低电平有效的输出信号, 当 8255A 接收到一个响应信 号时, 才能恢复为高电平 另一方面, 打印机需要一个数据选通信号才能接收数据, 而是 一个低脉冲信号, 因此直接将与相连, 将会因为互相等待而产生 死锁 采用单稳态电 路 74LS123 即可满足 8255A 和打印机双方的时序要求, 因为单稳态电路只要输入一个下降沿 信号就可以输出一个低脉冲信号 打印机的工作原理是 : 当数据选通信号 ( 负脉冲 ) 有效时, 数据线 D7~D0 上的数据被 锁存到打印机内部的数据缓冲区中, 同时将忙信号 BUSY 置 1, 表示打印机正在处理输入的 数据, 等到输入的数据处理完毕, 撤消忙信号, 将 BUSY 清 0, 同时送出应答信号, 表示一 个字符已经输出完毕 打印驱动程序编制如下 : DATA SEGMENT BUFFER DB 100H DUP(?) 145

42 DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX, DATA MOV DS, AX MOV AL, 0A8H ; A 口方式 1 输出, PC4 输入 MOV DX, 0FFE3H ; 控制口地址 OUT DX, AL ; 控制字写入控制口 MOV CX, 100H ; 传送字节数送 CX 寄存器 MOV SI, OFFSET BUFFER ; 数据缓冲区首地址送 SI 寄存器 L1: MOV DX, 0FFE2H ; C 口地址 IN AL, DX ; 读 C 口内容, 查询 BUSY 信号 AND AL, 10H ; 保留 PC4 状态, 判断 BUSY=1? JNZ L1 ; BUSY=1, 打印机处于忙状态, 应该继续查询 MOV AL, [SI] ; BUSY=0, 打印机处于空闲状态, 可以输出数据 MOV DX, 0FFE0H ; A 口地址 OUT DX, AL ; 输出数据 INC SI ; 修改数据缓冲区地址 LOOP L1 ; 数据未传送完毕, 继续传送 MOV AX, ; 数据传送完毕, 返回 DOS INT 21H CODE ENDS ENDS START 7.4 串行通讯和串行接口芯片 8251 一 填空题 1. 低 移位 4. 同步和异步 5. 远 6. 相同 二 简答题 1. 答 : 传输方式可分为单工方式 半双工方式 全双工方式 (1) 对传输速率有严格要求 (2) 采用单条传输线来传输数据, 减小了传输成本, 增加了收发双方的复杂性 (3) 传输过程中, 由于引起误码, 需差错控制 2. 答 : 串行通信中 : 数据传送方式是串行的 ( 一位一位传送 ), 数据传送速度较慢, 但成本 低, 适用于远距离传送 并行通信中 : 数据传送方式是并行的 ( 数位一起传送 ), 数据传送速度较高, 但成本较高, 适用于近距离通信 3. 答 : 同步通信是用时钟信号加载传输信号的, 因些收发时钟频率 = 收发波特率 ; 异步通信 情况下, 接收时钟频率 =n 接收波特率, 其中 n=1,16,64; 发送时钟频率可以等于波特率, 也可以为 n 发送波特率, 但考虑到时钟与接收时钟一致, 故发送时钟频率 =n 发波特率, 其中 n=1,16,64 146

43 4. 答 : 起始位置和停止位置的作用是使收发双方在随机传送的字符与字符间实现同步 接收端在检测到起始位时, 便知道字符已经到达, 应开始接收字符 ; 当检测到停止位时, 则知道字符传送已经结束 5. 答 : 每帧占 1?7?1?1=10 位, 波特率为 4800 bit/s, 故每分钟能传送的最大字符数为 28800( 个 )(4800*60/10) 6. 答 : 每个字符需要的发送位数是 12 位 ( 数据位 8 位, 校验位 1 位, 停止位 2 位, 起始位 1 位 ) 每秒发送 100 个字符共 1200 位 因此波特率为 1200 波特, 位周期 = 833μs 一 选择题 1. D 2. A 3.A 4.A 5.B 二 简答题 第 8 章控制器芯片 8.1 中断控制器 答 :8259A 通过级联的方式由 9 片构成最多 64 级优先权的中断源 2. 答 :8259A 的内部结构有数据总线缓冲器, 读写逻辑电路, 级联缓冲比较器, 中断请求 寄存器 (IRR), 中断屏蔽寄存器 (IMR), 中断服务寄存器 (ISR), 优先权判别器 (PR), 控 制逻辑 3. 答 :8259A 有 2 种中断结束方式 : 中断自动结束方式, 中断非自动结束方式 ( 一般中断 和特殊中断 ); 中断自动结束方式只适合有一块 8259A, 并且各中断不发生嵌套的情况 中 断非自动结束方式只能适合与全嵌套方式下不能用与循环优先级方式 4. 答 : 有 4 种, 普通全嵌套方式, 特殊全嵌套方式, 自动循环方式, 优先级特殊循环方式 5. 答 :8259A 的初始化命令字 ICW1,ICW2,ICW3,ICW4; 操作命令字 OCW1,OCW2,OCW3; ICW2,ICW3,ICW4,OCW1 写入奇地址,ICW1,OCW2,OCW3 为偶地址 6. 答 : 中断请求寄存器 IRR: 保存 8 条外界中断请求信号 IR0~IR7 的请求状态 Di 位为 1 表示 IRi 引脚有中断请求 ; 为 0 表示该引脚无请求 中断屏蔽寄存器 IMR: 保存对中断请求信号 IR 的屏蔽状态 Di 位为 1 表示 IRi 中断被屏蔽 ( 禁止 ); 为 0 表示允许该中断 中断服务寄存器 ISR: 保存正在被 8259A 服务着的中断状态 Di 位为 1 表示 IRi 中断正在服 务中 ; 为 0 表示没有被服务 7. 答 :8259A 中断控制器可以接受 8 个中断请求输入并将它们寄存 对 8 个请求输入进行 优先级判断, 裁决出最高优先级进行处理, 它可以支持多种优先级处理方式 8259A 可以对 中断请求输入进行屏蔽, 阻止对其进行处理 8259A 支持多种中断结束方式 8259A 与微处 理器连接方便, 可提供中断请求信号及发送中断类型码 8259A 可以进行级连以便形成多于 8 级输入的中断控制系统 三 应用题 1. 答 :? 8259A 占 2 个端口地址为 20H,22H 或 24H,26H 其中 ICW1 的设置地址为 20H 或 24H? 8255A 占 4 个端口地址为 80H,82H,84H,86H, 控制寄存器的地址为 86H 2. 答 :(1)MOV AL, B OUT 20H,AL MOV AL, B OUT 21H,AL MOV AL, B 147

44 OUT 21H,AL (2) 如果显示 E, 则端口 A 送出的数据是 30H; 如果显示 O, 则端口 A 送出的数据是 01H; 程序如下 :MOV AL, B OUT 63H,AL MOV AL,30H OUT 60H,AL MOV AL,01H OUT 60H,AL 3. 答 : 根据已知条件得到以下预置命令字为 : ICW1= =13H,A0=0 偶地址 ICW2= =48H,A0=1 奇地址 ICW4= =03H ; A0=1 奇地址初始化程序段为 : MOV DX,120H MOV AL,13H OUT DX,AL ; 写入预置命令字 1 MOV DX,121H MOV AL,48H OUT DX,AL ; 写入预置命令字 2 MOV DX,121H MOV AL,03H OUT DX,AL ; 写入预置命令字 定时 / 计数控制器 8253 一 选择题 1. C 2. D 3. C 4. A 5. D 6. D 7.C 8.C 9.A 10. A 二 简答题 1. 答 :8253 有三个计数通道, 每个计数通道有 3 条信号线 :CLK: 计数输入用于输入定时基准脉冲或计数脉冲.OUT: 输出信号以相应的电平指示计数的完成或输出脉冲的波型.GATA: 选通输入用于启动或禁止计数器的操作, 以使计数器和计数输入信号同步 2. 答 :CLK 为计数时钟输入引脚, 为计数器提供计数脉冲 ;GATE 为门控信号输入引脚, 用于启动或禁止计数器操作, 如允许 / 禁止计数 启动 / 停止计数等 ;OUT 为输出信号引脚以相应的电平或脉冲波形来指示计数的完成 定时时间到 三 编程题 1. 答 :MOV AL, H ; 控制字 OUT 43H,AL MOV AL,3000H ; 计数初值 OUT 40H,AL MOV AL, H ; 计数器 1 OUT 43H,AL MOV AL,100H OUT 41H,AL MOV AL, H ; 计数器 2 148

45 OUT 43H,AL MOV AL,4030H OUT 42H,AL 2. 答 :(1) MOV AL, 50H OUT 07H, AL MOV AL, 128 OUT 05H, AL (2) MOV AL, 33H OUT 07H, AL MOV AX, 3000 OUT 04H, AL MOV AL, AH OUT 04H,A; (3) MOV AL, 0B4H OUT 07H, AL MOV AL, 0F0H OUT 06H,AL MOV AL, 02H OUT 06H, AL 3. 答 : 编写 8253 的初始化程序 (1) 确定端口地址 :0310H 0312H 0314H 0316H (2) 确定工作方式 : 通道 0, 方式 3 通道 1, 方式 1 通道 2, 方式 5 (3) 确定计数值 : 通道 0:N0=1MHz/2KHz=500 通道 1:N1=480us/(1/1mhz)=480 通道 2:N2=26 (4) 确定控制字 : 通道 0: B 通道 1: B 通道 2: B 对 3 个通道的初始化程序如下 : ; 通道 0 初始化程序 MOV DX, 316H MOV AL, B OUT DX,AL MOV DX,310H MOV AL,00H OUT DX, AL MOV AL,05H OUT DX,AL ; 通道 1 的初始化程序 MOV DX, 316H MOV AL, B OUT DX, AL 149

46 MOV DX, 312H MOV AL, 80H OUT DX, AL MOV AL, 04H OUT DX, AL ; 通道 2 初始化程序 MOV DX, 316H MOV AL, B OUT DX, AL MOV DX, 314H MOV AL,26H OUT DX,AL 4. 计数器 0 工作于方式 KHZ 5. 答 :(1) 8255 的端口地址为 80H, 82H, 84H, 86H 8253 的端口地址为 90H, 92H, 94H, 96H 8259 的端口地址为 A0H, A2H, 8251 的端口地址为 B0H, B2H, (2) OUT 80H, AL IN AL, 82H 6. 答 :(1) 程序对 8253 的通道 1 进行初始化 (2) 计数常数为 10000D,BCD 计数 (3) 工作在方式 3, 方波速率发生器周期 =10000?1μs=10000μS=10ms 7. 答 : 由于 A6 和 A2 不受约束, 所以共有四组可选地址 (A6=0): 3A0H~3A3H (A2=0) 3A4H~3A7H (A2=1) (A6=1): 3E0H~3E3H (A2=0) 3E4H~3E7H(A2=1) 选择 3A0H~3A3H 这组地址 : 用计数器 0, 工作方式 3 计数初值为 :N=1MHZ/1KHZ= 初始化程序段如下 : MOV AL,36H ; B MOV DX,3A3H OUT DX,AL MOV AX,1000 MOV DX,3A0H OUT DX,AL MOV AL,AH OUT DX,AL 8.3 DMA 控制器 答 :DMA 控制器能给出访问内存所需要的地址信息, 并能自动修改地址指针, 也能设定和修改传送的字节数, 还能向存储器和外设发出相应的读 / 写控制信号 在 DMA 传送结束后, 它能释放总线, 把对总线的控制权又交还给 CPU 用 DMA 方式传输数据时, 不需要进行保护和恢复断点及现场之类的额外操作 2. 答 :8237A 取得总线控制权以后进行单字节的 DMA 传送, 传送完一个字节以后修改字节计数器和地址寄存器, 然后就将总线控制权放弃. 若 I/O 的 DMA 请求信号 DREQ 继续有效, 150

47 8237A 再次请求总线使用权进行下一字节的传送 第 9 章转换器芯片 9.1 D/A 转换及转换器 一 选择题 1.B 2.D 二 填空题 1. 分辨率 2. ADC, DAC, 运算放大器 二 应用题 程序段如下 : MOV DX, PORT ; DAC 端口地址 MOV AL, 00H ; 初始值 REPEAT: OUT DX, AL ; 输出, 完成 D/A 转换 一 选择题 INC AL ; 增量 JMP REPEAT ; 重复转换过程 1.C 2.B 3.B 4. A 5. B 二 简答题 9.2 A/D 转换及转换器 1. 答 :ADC 把模拟量转换为数字量信号, 分为四步来完成 : 采样 保持 量化 编码 转 化过程可以用逐次逼近型电路 V/F 转换型电路和双积分型电路 2. 答 :ADC 与微处理器接口的基本任务是 : 向 ADC 转发启动转换信号 ; 向 CPU 提供转换结束信 号, 把转换好的数据送入微处理器 3. 答 : 可采用直接与 CPU 的 INTR 引脚连接, 或通过 8259A 接 CPU 4. 答 : 传感器 : 将各种现场的物理量测量出来并转换成电信号 放大器 : 放大器把传感器输出的信号放大到 ADC 所需的量程范围 低通滤波器 : 滤波器用于降低噪声 滤去高频干扰, 以增加信噪比 多路开关 : 对多个模拟信号分时地接通到 A/D 转换器上转换, 达到共用 A/D 转换器以节省硬 件的目的 采样保持器 : 对高速变化的信号, 使用采样保持器可保证 A/D 转换期间信号不变, 保证转换 精度 151

,768 32,767 32K JMP Jnnn (386+) LOOP CALL [Label:] JMP short/near/far address L10: jmp jmp L20: L10 L20

,768 32,767 32K JMP Jnnn (386+) LOOP CALL [Label:] JMP short/near/far address L10: jmp jmp L20: L10 L20 (Jump) (Loop) (Conditional jump) CMP CALL AND SAR/SHR TEST JMP NOT SAL/SHL Jnnn* OR RCR/ROR LOOP XOR RCL/ROL RETn * nnn, JNE JL -128 127-32,768 32,767 32K JMP Jnnn (386+) LOOP CALL [Label:] JMP short/near/far

More information

untitled

untitled 8086/8088 CIP /. 2004.8 ISBN 7-03-014239-X.... TP313 CIP 2004 086019 16 100717 http://www.sciencep.com * 2004 8 2004 8 1 5 500 787 1092 1/16 16 1/2 391 000 1 2 ii 1 2 CAI CAI 3 To the teacher To the student

More information

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63> 第三章 Q3 1 1. 省略了 I/O 操作的复杂逻辑, 易实现, 耗费低 ; 2. 可以利用丰富的内存寻址模式实现灵活的 I/O 操作 Q3 2 假设存储单元 ds1 处寄存器地址为 0x2000, 代码如下 #define ds1 0x2000 while ( *ds1 == 0 ) ; Q3 3 假设设备 (dev1) 中有两个寄存器 ds1 和 dd1,dev1 的地址为 0x1000,ds1

More information

幻灯片 1

幻灯片 1 3 8086 Tel:2656809 tjx@csu.edu.cn 2005-9-14 1 2005-9-14 2 8086 8 8086 8086 7 2005-9-14 3 PC 2005-9-14 4 2005-9-14 5 81616 2005-9-14 6 [ ] MOV AX, 3064H AX=3064H 16AX OP 64H 30H 2005-9-14 7 16 AX BX CX

More information

<4D6963726F736F667420576F7264202D20C7B6C8EBCABDCFB5CDB3C9E8BCC6CAA6B0B8C0FDB5BCD1A75FD1F9D5C22E646F63>

<4D6963726F736F667420576F7264202D20C7B6C8EBCABDCFB5CDB3C9E8BCC6CAA6B0B8C0FDB5BCD1A75FD1F9D5C22E646F63> 因 为 路 过 你 的 路, 因 为 苦 过 你 的 苦, 所 以 快 乐 着 你 的 快 乐, 追 逐 着 你 的 追 逐 内 容 简 介 本 书 根 据 2005 年 下 半 年 实 施 的 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 嵌 入 式 系 统 设 计 师 级 考 试 大 纲 精 神, 在 深 入 研 究 历 年 计 算 机 技 术 与 软

More information

D/A DAC ( 1us) (10~20 ) DAC0832 1

D/A DAC ( 1us) (10~20 ) DAC0832 1 D/A DAC0832 8 ( 1us) (10~20 ) DAC0832 1 1. 20 DI7~DI0 ILE 8 8 DAC 8 D/A LE LE & RFB VREF IOUT2 IOUT1 RFB CS WR1 XFER WR2 & & AGND VCC DGND 2 DI7~DI0 ILE & 8 LE 8 DAC LE 8 D/A RFB V REF IOUT2 IOUT1 R FB

More information

图 内部结构图 8251 的外部引脚如图 所示, 共 28 个引脚, 每个引脚信号的输入输出方式如图中的箭 头方向所示

图 内部结构图 8251 的外部引脚如图 所示, 共 28 个引脚, 每个引脚信号的输入输出方式如图中的箭 头方向所示 实验题目 : 串行接口芯片 8251 实验目的 : 1. 掌握 8251 的工作方式及应用 2. 了解有关串口通讯的知识 串行接口芯片 8251 3. 掌握使用 8251 实现双机通讯的软件编程和电路连接 实验设备 : IA-32 架构的微机系统及应用教学平台两套 实验原理 : 1. 8251 的基本性能 性能 : 8251 是可编程的串行通信接口, 可以管理信号变化范围很大的串行数据通信 有下列基本

More information

Ps22Pdf

Ps22Pdf ( ) ( 150 ) 25 15 20 40 ( 25, 1, 25 ), 1. A. B. C. D. 2. A. B. C. D. 3., J = 1 H = 1 ( A B, J', J, H ) A. A = B = 1, J' =0 B. A = B = J' =1 C. A = J' =1, B =0 D. B = J' = 1, A = 0 4. AB + AB A. AB B. AB

More information

PowerPoint Presentation

PowerPoint Presentation 7.2 并行接口 二. 可编程并行接口芯片 8255A 的功能及其应用 与 CPU 一侧相连的引脚 D0 PA0 ~ ~ ~ ~ ~ D7 PA7 RESET PC7 WR RD PC4 PC3 PC0 A0 PB0 A1 PB7 CS PA 口 PC 口上半部 PC 口下半部 PB 口 A 组 B 组 与 I/O 设备相连的引脚 7.2 并行接口二. 可编程并行接口芯片 8255A 的功能及其应用

More information

习 题 一

习  题  一 第 1 页共 13 页 微机原理与接口技术 A 卷 一 填空题 ( 共计 20 分 每个空 2 分 ) 1 已知 [X] 补 =01100011B, 求 X=( ) ( 结果用十进制表示 ) [Y] 补 =11111001B, 求 Y=( ) ( 结果用十进制表示 ) 2 8088CPU 的地址总线为多少条 ( ); 直接寻址的内存空间为多少 ( ) 3 已知 DS=2000H, 内存 (20200H)=FFH,(20201H)=22H

More information

(2) Function 0BH: Function 0CH: (pixel, picture element) Function 0DH: Function 0FH: Function 13H:

(2) Function 0BH: Function 0CH: (pixel, picture element) Function 0DH: Function 0FH: Function 13H: (1) INT 10H Function 00H: Function 01H: Function 02H: Function 03H: Function 05H: Function 06H: Function 07H: Function 08H: Function 09H: Function 0AH: (2) Function 0BH: Function 0CH: (pixel, picture element)

More information

华侨大学 2013 年硕士研究生入学考试专业课试卷 ( 答案必须写在答题纸上 ) 招生专业 精密仪器及机械 测试计量技术及仪器 检测技术与自动化装置 科目名称微计算机原理科目代码 853 一 填空 ( 每空 1 分, 共 30 分 ) 1 计算机的基本结构可分为 1, 2, 3, 4, 5 五个部分

华侨大学 2013 年硕士研究生入学考试专业课试卷 ( 答案必须写在答题纸上 ) 招生专业 精密仪器及机械 测试计量技术及仪器 检测技术与自动化装置 科目名称微计算机原理科目代码 853 一 填空 ( 每空 1 分, 共 30 分 ) 1 计算机的基本结构可分为 1, 2, 3, 4, 5 五个部分 华侨大学 2013 年硕士研究生入学考试专业课试卷 ( 答案必须写在答题纸上 ) 招生专业 精密仪器及机械 测试计量技术及仪器 检测技术与自动化装置 科目名称微计算机原理科目代码 853 一 填空 ( 每空 1 分, 共 30 分 ) 1 计算机的基本结构可分为 1, 2, 3, 4, 5 五个部分 2 八进制与二进制之间转换,(143) 8= 6 B,1 0000 0000.011B 的十进制为

More information

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit 6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C51 6.1 C51 6.1.1 C51 C51 ANSI C MCS-51 C51 ANSI C C51 6.1 6.1 C51 bit Byte bit sbit 1 0 1 unsigned char 8 1 0 255 Signed char 8 11 128

More information

学习MSP430单片机推荐参考书

学习MSP430单片机推荐参考书 MSP430 16 MSP430 C MSP430 C MSP430 FLASH 16 1 CPU 16 ALU 16 PC SP SR R4~R15 2 3 00-FFH 100-1FFH 4 5 1 2 51 24 27 6 1 2 3 4 5 6 4 12 SR SP SR CPU SR CPU C Z N GIE CPUOff CPU OscOff SCG0 SCG1 CPU EXIT SP

More information

<4D F736F F F696E74202D20B5DA35D5C2CEA2B4A6C0EDC6F7B9A4D7F7D4ADC0ED2E707074>

<4D F736F F F696E74202D20B5DA35D5C2CEA2B4A6C0EDC6F7B9A4D7F7D4ADC0ED2E707074> 第 5 章 微处理器工作原理 1 5.1 8086 处理器 2 1. 管脚定义 3 8086/88 管脚描述 8086:16 位微处理器, 16 位外部数据总线 8088:16 位微处理器, 8 位外部数据总线 GND AD14 AD13 AD12 AD11 AD10 AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 NMI INTR CLK GND 1 2 3 4 5

More information

DPJJX1.DOC

DPJJX1.DOC 8051 111 2K 1 2 3 ' ' 1 CPU RAM ROM / A/D D/A PC CPU 40 68 10 20 8 51 PIII 8051 2 MCS51 8051 8031 89C51 8051 8031 89C51? MCS51 INTEL INTEL 8031 8051 8751 8032 8052 8752 8051 8051 8051 MCS51 8031 8031

More information

微型计算机原理及应用试题 机电96

微型计算机原理及应用试题   机电96 微 机 原 理 试 题 ( 一 ) 总 分 : 一 : 单 项 选 择 题 ( 每 题 1 分, 共 10 分 ) 1. 微 型 计 算 机 中 主 要 包 括 有 ( ) A) 微 处 理 器 存 储 器 和 I/O 接 口 B) 微 处 理 器 运 算 器 和 存 储 器 C) 控 制 器 运 算 器 和 寄 存 器 组 D) 微 处 理 器 运 算 器 和 寄 存 器 2. DMA 控 制 器

More information

微机第02章1(指令寻址)

微机第02章1(指令寻址) 微机原理及应用 主讲 : 谢维成 http://xweicheng.ys168.com scxweicheng@yahoo.com.cn 西华大学电气信息学院 1 2 第 2 章微机的组成及微处理器的功能结构 2.1 微型计算机的组成 2.2 80X86 系列微处理器的功能结构 3 教学重点 80X86 系列微处理器的功能结构 80X86 的存储器分段管理方式 4 2.1 微型计算机的组成 AB 运算器

More information

《微型计算机原理》

《微型计算机原理》 第五章汇编语言程序设计 1 画图说明下列语句所分配的存储器空间及初始化的数据值 难度:2 (1) BYTE_VAR DB BYTE,12,-12H,3 DUP(0,2 DUP(1,2),7) (2) WORD_VAR DW 3 DUP(0,1,2),7,-5, BY, TE,256H ( 1) (2) 07H BYTE_VAR 42H WORD_VAR 59H FBH 54H FFH 45H 59H

More information

第5章:汇编语言程序设计

第5章:汇编语言程序设计 第 5 章 : 汇编语言程序设计 程 汇编语言指令格式 系统伪指令 存储器选择方式 常用子程序 1 汇编语言程序设计 PIC 指令系统 语言系统 指 CPU 编 器语言 器语言 器语言 设计 用 语言 设计 语言 汇编语言 2 汇编语言指令格式 汇编语言指令格式 ( 指令 ) label opcode operand comment 指令 用 存 指令 指令语 3 汇编语言指令格式 1 指令 用 指令

More information

指令系统 可分成如下 6 类 : 数据传送指令 算术运算指令 逻辑运算和移位指令 串操作指令 程序控制指令 处理器控制指令 2015 年 3 月 26 日星期四 8 时 41 分 27 秒 2

指令系统 可分成如下 6 类 : 数据传送指令 算术运算指令 逻辑运算和移位指令 串操作指令 程序控制指令 处理器控制指令 2015 年 3 月 26 日星期四 8 时 41 分 27 秒 2 第 3 章 8086 的寻址方式和指令系统 (2) 2015 年 3 月 26 日星期四 8 时 41 分 27 秒 1 3.3 8086 指令系统 可分成如下 6 类 : 数据传送指令 算术运算指令 逻辑运算和移位指令 串操作指令 程序控制指令 处理器控制指令 2015 年 3 月 26 日星期四 8 时 41 分 27 秒 2 3.3.1 数据传送指令 可实现 存储器 立即数 段寄存器 CS DS

More information

42 2141601026 2016 11 27 2 1.1............................................. 2 1.2....................................... 2 1.2.1......................................... 2 1.3.............................................

More information

微机原理 接口与汇编 模拟试题一参考答案 一 单项选择题 1.B. 2.C. 3.D. 4.D.5.C. 6.D. 7.B. 8.C. 9.B. 10.C 11.C.12.C.13.D.14.A.15.C. 二 填空题 H 2. 主频 4 3. 独立编址 统一编

微机原理 接口与汇编 模拟试题一参考答案 一 单项选择题 1.B. 2.C. 3.D. 4.D.5.C. 6.D. 7.B. 8.C. 9.B. 10.C 11.C.12.C.13.D.14.A.15.C. 二 填空题 H 2. 主频 4 3. 独立编址 统一编 微机原理 接口与汇编 模拟试题一参考答案 一 单项选择题 1.B. 2.C. 3.D. 4.D.5.C. 6.D. 7.B. 8.C. 9.B. 10.C 11.C.12.C.13.D.14.A.15.C. 二 填空题 1.00001101 11110011H 2. 主频 4 3. 独立编址 统一编址 4.14 8 5.1200 6.01010100B 7.AX=110 BX=22,0~20 偶数的累加和

More information

主要内容 指令系统的一般概念 指令操作方式操作码的含义指令对操作数的要求指令执行的结果 寻址方式 指令说明 2015 年 3 月 16 日星期一 8 时 2 分 37 秒 2

主要内容 指令系统的一般概念 指令操作方式操作码的含义指令对操作数的要求指令执行的结果 寻址方式 指令说明 2015 年 3 月 16 日星期一 8 时 2 分 37 秒 2 第 3 章 8086 的寻址方式和指令系统 (1) 2015 年 3 月 16 日星期一 8 时 2 分 37 秒 1 主要内容 指令系统的一般概念 指令操作方式操作码的含义指令对操作数的要求指令执行的结果 寻址方式 指令说明 2015 年 3 月 16 日星期一 8 时 2 分 37 秒 2 3.1 8086 的寻址方式 两种不同的类型 : 一类是程序地址 ( 在代码段中 ) 的寻址方式 ; 另一类是操作数地址的寻址方式

More information

組譯與連結(Ver6

組譯與連結(Ver6 Intel 8088/86 CPU GND 1 40 VCC GND 1 40 VCC A14 2 39 A15 AD14 2 39 AD15 A13 3 38 A16/S3 AD13 3 38 A16/S3 A12 4 37 A17/S4 AD12 4 37 A17/S4 A11 5 36 A18/S5 AD11 5 36 A18/S5 A10 A9 6 7 35 34 A19/S6 SS0 (

More information

一、单选题(本大题共15小题,每小题1分,共15分)

一、单选题(本大题共15小题,每小题1分,共15分) 北京大学信息科学技术学院考试试卷 科目 : 微机原理 A 姓名 : 学号 : 题号一二三四五六七八总分 分数 阅卷人 考试时间 : 2010 年 1 月 8 日任课教师 : 王克义装订线内请勿答题考场纪律 1. 请持学生证入场考试, 并按指定座位就座 ; 除必要的文具和教师指定的用具用书外, 其他所有物品包括手机 呼机 MP3 电子词典 书籍 笔记 纸张等严禁带入座位, 必须放在指定位置 凡有试题印制问题请向监考教师提出,

More information

一、填空题

一、填空题 微机原理及汇编语言复习题一 选择题 1. 完整的计算机系统应包括 ( ) A. 运算器 控制器 寄存器组 总线接口 B. 外设和主机 C. 主机和应用程序 D. 配套的硬件设备和软件系统 2. 计算机系统中的存储器系统是指 ( ) A.RAM B.ROM C. 主存储器 D. 内存和外存 3. 机器语言是指 ( ) A. 用英语缩写词表示的面向机器的程序设计语言 B. 用二进制代码表示的程序设计语言

More information

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 月 3 日 1 1 INPUTOUTPUT 1 InputOutput 题目描述 用 cin 输入你的姓名 ( 没有空格 ) 和年龄 ( 整数 ), 并用 cout 输出 输入输出符合以下范例 输入 master 999 输出 I am master, 999 years old. 注意 "," 后面有一个空格,"." 结束,

More information

Microsoft PowerPoint - 05-第五讲-寻址方式.pptx

Microsoft PowerPoint - 05-第五讲-寻址方式.pptx 第五讲 授课教师 : 陆俊林王箫音 2012 年春季学期 主要内容 一 寻址方式概述 二 数据的寻址方式 三 转移地址的寻址方式 教材相关章节 : 微型计算机基本原理与应用 ( 第二版 ) 第 4 章寻址方式与指令系统 1 主要内容 一 寻址方式概述 二 数据的寻址方式 三 转移地址的寻址方式 2 指令的组成 指令由操作码和操作数两部分组成 操作码操作数 MOV AX, 8726H ADD AX,

More information

Microsoft PowerPoint - 第01章 基础知识.pptx

Microsoft PowerPoint - 第01章 基础知识.pptx 微处理器与微计算机系统 教材 : 单片机原理与应用及 C51 程序设计 ( 第 3 版 ) 清华大学出版社 主讲 : 谢维成 http://xweicheng.ys168.com scxweicheng@mail.xhu.edu.cn 西华大学电气与电子信息学院 第 1 章计算机基础知识 主要内容 : 1 有符号数的表示 2 微型计算机工作原理 3 单片机的概念及特点 A Historical Background

More information

untitled

untitled CHAPTER 02 2 CHAPTER 2-1 2-4 2-2 2-5 2-3 2-6 2-1 2-1-1 2-2 02 int A[3] = {10, 20, 30; A[0] 10 A[1] 20 A[2] 30 int *pa[3], A[3]; C 3 pa pa[0]pa[1]pa[2] 3 A A[0]A[1]A[2] 3 A A[0] A + i A[i] A + i &A[i]*(A

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,

More information

微机原理与接口技术 郭玉洁

微机原理与接口技术 郭玉洁 微机原理与接口技术 郭玉洁 实验安排 汇编语言程序设计实验编程测验硬件接口应用实验综合应用实验 2 学时 1 学时 4 学时 4 学时 一 实验内容 二 实验目的 三 实验方法 实验报告要求 1 文字叙述设计思路 2 流程图 四 实验源程序 ( 必要的文字注释 ) 五 实验结果 六 实验中遇到的问题及解决方法 七 心得体会 ( 学会编程 调试等学习的方法 ) 汇编语言实验内容 1 学习并掌握 IDE86

More information

chap07.key

chap07.key #include void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n"); void, int 标识符逗号分隔,

More information

1 2 / 3 1 A (2-1) (2-2) A4 6 A4 7 A4 8 A4 9 A ( () 4 A4, A4 7 ) 1 (2-1) (2-2) ()

1 2 / 3 1 A (2-1) (2-2) A4 6 A4 7 A4 8 A4 9 A ( () 4 A4, A4 7 ) 1 (2-1) (2-2) () (39mm E-Mail ( )( ), : : 1 1 ( ) 2 2 ( ) 29mm) WSK ( 1 2 / 3 1 A4 2 1 3 (2-1) 2-1 4 (2-2) 2-2 5 A4 6 A4 7 A4 8 A4 9 A4 10 11 ( () 4 A4, 5 6 7 8 A4 7 ) 1 (2-1) (2-2) () 1 2 (2-1) 3 (2-2) 4 5 6 7 (8 ) 9

More information

微机第02章1(指令寻址)

微机第02章1(指令寻址) 微机原理及应用 主讲 : 谢维成 http://xweicheng.ys168.com scxweicheng@yahoo.com.cn 西华大学电气信息学院 1 第 03 章 80X86 的寻址方式和指令 ( 本章内容 ) 3.1 指令的格式 3.2 8086/8088 的寻址方式 3.3 指令系统 3.3.1 数据传送指令 3.3.2 算术运算指令 3.3.3 逻辑运算与移位指令 3.3.4 串操作指令

More information

第四章 8086汇编语言程序设计

第四章 8086汇编语言程序设计 第四章汇编语言程序设计 几个概念 8086 汇编语言的语句 8086 汇编中的伪指令 8086 汇编中的运算符 汇编语言程序设计 系统调用 几个概念 1. 汇编语言 2. 汇编语言源程序 3. 汇编 4. 汇编程序 5. 什么是汇编语言 (Assembly Language)? 6. 使用指令的助记符 符号地址和标号等编写的程序设计语言 7. 每条指令都有对应的机器码, 不同的 CPU 使用不同的汇编语言

More information

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File 51 C 51 51 C C C C C C * 2003-3-30 pnzwzw@163.com C C C C KEIL uvision2 MCS51 PLM C VC++ 51 KEIL51 KEIL51 KEIL51 KEIL 2K DEMO C KEIL KEIL51 P 1 1 1 1-1 - 1 Project New Project 1 2 Windows 1 3 N C test

More information

4 / ( / / 5 / / ( / 6 ( / / 7 1 2 / 3 ( 4 ( 2003 8 ( 2

4 / ( / / 5 / / ( / 6 ( / / 7 1 2 / 3 ( 4 ( 2003 8 ( 2 : / ( 6 (2003 8 : ( 1 ( ( / / (,, ( ( - ( - (39mm 29mm 2 ( 1 2 3-6 3 6-24 6-48 12-24 8-12 WSK / WSK WSK 1 4 / ( / / 5 / / ( / 6 ( / / 7 1 2 / 3 ( 4 ( 2003 8 ( 2 9 5 ( 10 3 11 / (600 4 5 AA 710 AB 720 730

More information

试卷代号 : 1061 座位号 I I I 中央广播电视大学 学年度第二学期 " 开放本科 " 期末考试 微计算机技术试题 题号 I - I 二 三 四 总 分 分数 I I I I I I 2011 年 7 月 得分 评卷人 一 选择填空 ( 每题 4 分, 共 6

试卷代号 : 1061 座位号 I I I 中央广播电视大学 学年度第二学期  开放本科  期末考试 微计算机技术试题 题号 I - I 二 三 四 总 分 分数 I I I I I I 2011 年 7 月 得分 评卷人 一 选择填空 ( 每题 4 分, 共 6 试卷代号 : 1061 座位号 I I I 中央广播电视大学 2 0 1 0-2 0 1 1 学年度第二学期 " 开放本科 " 期末考试 微计算机技术试题 题号 I - I 二 三 四 总 分 分数 I I I I I I 2011 年 7 月 得分 评卷人 一 选择填空 ( 每题 4 分, 共 6 0 分 ) 1. 最早的 IB l'v1 PC 微计算机系统使用 ( ) 作为核心微处理器 A.8086

More information

数据库系统概论

数据库系统概论 所谓寻址方式, 就是指令中用于说明操 作数所在地或者所在地地址的方法 8088/8086 的寻址方式分为两类 : 关于寻找数据的寻址方式 关于寻找转移地址的寻址方式 下面讲关于数据的寻址方式时, 均以数 据传送指令 MOV 为例讲解 MOV 指令格式如下 : MOV DST, SRC 助记符 目的操作数 指令完成的功能 : (DST) 源操作数 (SRC) 一. 关于寻找数据的寻址方式 ( 共 8

More information

浙江省2004年1月高等教育自学考试

浙江省2004年1月高等教育自学考试 汇编语言试题 A 一 单项选择题 ( 本大题共 20 小题, 每小题 1 分, 共 20 分 ) 在每小题列出的四个备选项中只有一个是符合题目要求的, 请将其代码填写在题后的括号 内 错选 多选或未选均无分 1. 当执行 ADD AX,BX 指令后, 若 AX 的内容为 4E52H 时, 设置的奇偶标志位 PF=0, 下 面的叙述正确的是 ( ) A. 表示结果中含 1 的个数是奇数 B. 表示结果中含

More information

Microsoft PowerPoint - 微原-第3章2.ppt [兼容模式]

Microsoft PowerPoint - 微原-第3章2.ppt [兼容模式] 本教案内容 第 3 章 8086CPU 指令系统 1. 汇编语言指令 9. 转移指令 10. 2. 8086 指令分类循环控制指令 11. 子程序调用返回 3. 数据与转移地址的指令寻址方式 12. 中断调用返回指 4. 数据传送类指令令 5. 算术运算类指令 13. 字符串操作指令 6. 逻辑运算类指令 14. I/O 输入输出指令 7. 移位类指令 15. 其它指令 8. 标志位操作指令 16.

More information

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP:  ******************* * 关于 Java 测试试题 ****** ******************* * 关于 Java 测试试题 ******************* 問 1 运行下面的程序, 选出一个正确的运行结果 public class Sample { public static void main(string[] args) { int[] test = { 1, 2, 3, 4, 5 ; for(int i = 1 ; i System.out.print(test[i]);

More information

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3 浙江大学 C 程序设计及实验 试题卷 2002-2003 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:30-10:30 注意 : 答题内容必须写在答题卷上, 写在本试题卷上无效 一. 单项选择题 ( 每题 1 分, 共 10 分 ) 1. 下列运算符中, 优先级最低的是 A.

More information

Ps22Pdf

Ps22Pdf ) ,,, :,,,,,,, ( CIP) /. :, 2001. 9 ISBN 7-5624-2368-7.......... TU311 CIP ( 2001) 061075 ( ) : : : : * : : 174 ( A ) : 400030 : ( 023) 65102378 65105781 : ( 023) 65103686 65105565 : http: / / www. cqup.

More information

微机系统与接口--第5章-2.ppt

微机系统与接口--第5章-2.ppt 第五章 数字量输入输出接口 主 要 内 容 * 接口基本概念 * 接口电路 ( 芯片 ) 端口地址 * 数据传送方式 * 总线及其接口 * 中断电路及其处理 * 定时 / 计数器电路与应用 * 并行接口电路与应用 * 串行接口电路与应用 * DMA 电路与应用 1 总线基本概念 CPU 总线 地址总线 AB CPU 存储器 数字 I/O 接口 输入出设备 模拟 I/O 接口 输入出设备 数据总线 DB

More information

第六章 微型计算机的输入输出

第六章  微型计算机的输入输出 第九章中断与中断管理 第九章中断与中断管理 9.1 中断原理 9.2 中断系统组成及其功能 9.3 中断源识别及中断优先权 9.4 8086 中断系统 9.5 可编程中断控制器 8259 9.6 IBM-PC 机硬件中断 第九章中断与中断管理 9.1 中断原理 9.2 中断系统组成及其功能 9.3 中断源识别及中断优先权 9.4 8086 中断系统 9.5 可编程中断控制器 8259 9.6 IBM-PC

More information

第4章

第4章 微机原理及应用 主讲 : 谢维成 http://xweicheng.ys168.com scxweicheng@yahoo.com.cn 西华大学电气信息学院 1 第 4 章汇编语言程序设计 汇编语言的格式 语句行的构成 指示性语句 指令语句 汇编语言程序设计及举例 2 8086 汇编语言程序举例 MY_DATA SEGMENT INFO DB Hello XIHUA University! MY_DATA

More information

94/03/25 (94 0940002083 94 12 31 B 1-8 (12-64 29 5 16 82 5 15 1 2 22-24 29 25-28 k1. 1 A 2 k2k3 3 k2k3 k2. k2a. 1 2 3 4 k2b. 1 2 k2b1.? 3 k3. 11 12 02 ( ( ( 1 2 (24 A. A1.? 1 0 A1a.? 1. 1 2 2. A2. 1 2

More information

Microsoft PowerPoint - Ch CPU总线及其形成.ppt [兼容模式]

Microsoft PowerPoint - Ch CPU总线及其形成.ppt [兼容模式] 2018 版 微机原理与接口技术 第五章 总线及其形成 dminghao@xidian.edu.cn 董明皓 1 2 3 4 5 总线定义及分类几种常用芯片 8086 的引脚功能及时序系统总线的形成 8088 与 8086 的差异 1 2 3 4 5 总线定义及分类几种常用芯片 8086 的引脚功能及时序系统总线的形成 8088 与 8086 的差异 综述 本门课学习的内容 内存 外设 1 外存 1

More information

数 学 高 分 的 展 望 一 管 理 类 联 考 分 析 第 一 篇 大 纲 解 析 篇 编 写 : 孙 华 明 1 综 合 能 力 考 试 时 间 :014 年 1 月 4 日 上 午 8:30~11:30 分 值 分 配 : 数 学 :75 分 逻 辑 :60 分 作 文 :65 分 ; 总

数 学 高 分 的 展 望 一 管 理 类 联 考 分 析 第 一 篇 大 纲 解 析 篇 编 写 : 孙 华 明 1 综 合 能 力 考 试 时 间 :014 年 1 月 4 日 上 午 8:30~11:30 分 值 分 配 : 数 学 :75 分 逻 辑 :60 分 作 文 :65 分 ; 总 目 录 数 学 高 分 的 展 望... 1 第 一 篇 大 纲 解 析 篇... 1 一 管 理 类 联 考 分 析... 1 二 最 新 大 纲 解 析... 1 三 考 前 复 习 资 料 及 方 法... 第 二 篇 总 结 篇... 4 1 应 用 题 考 点 总 结 与 技 巧 归 纳... 4 代 数 模 块 题 型 归 纳 及 考 点 总 结... 9 3 数 列 模 块 题 型 归

More information

untitled

untitled 不 料 料 例 : ( 料 ) 串 度 8 年 數 串 度 4 串 度 數 數 9- ( ) 利 數 struct { ; ; 數 struct 數 ; 9-2 數 利 數 C struct 數 ; C++ 數 ; struct 省略 9-3 例 ( 料 例 ) struct people{ char name[]; int age; char address[4]; char phone[]; int

More information

C C

C C C C 2017 3 8 1. 2. 3. 4. char 5. 2/101 C 1. 3/101 C C = 5 (F 32). 9 F C 4/101 C 1 // fal2cel.c: Convert Fah temperature to Cel temperature 2 #include 3 int main(void) 4 { 5 float fah, cel; 6 printf("please

More information

bingdian001.com

bingdian001.com 2016 14 1.5 21 1. 50% 20% 5% 10% A.2 B.10.5 C.10 D.2.1 A = 1/ - =50%20%/10%5%=2 2. 2015 1 1.2 1.5 2016 1.9 2015 A.50% B.90% C.75% D.60% A = / = =1.2 1.5=1.8 2016 =1.9-1 /1=0.9 =0.9/1.8=50% 3. A. B. C.

More information

3.3.2 算术运算指令 数据类型 : 无符号和有符号整数 无符号数又分成 : 无符号二进制数 ; 无符号压缩十进制 :1 字节表示 2 个十进制数 ; 无符号非压缩十进制 :1 字节表示 1 个十进制数 有符号数 : 有符号二进制数 用补码表示 2015 年 3 月 26 日星期四 11 时 3

3.3.2 算术运算指令 数据类型 : 无符号和有符号整数 无符号数又分成 : 无符号二进制数 ; 无符号压缩十进制 :1 字节表示 2 个十进制数 ; 无符号非压缩十进制 :1 字节表示 1 个十进制数 有符号数 : 有符号二进制数 用补码表示 2015 年 3 月 26 日星期四 11 时 3 第 3 章 8086 的寻址方式和指令系统 (3) 2015 年 3 月 26 日星期四 11 时 3 分 17 秒 1 3.3.2 算术运算指令 数据类型 : 无符号和有符号整数 无符号数又分成 : 无符号二进制数 ; 无符号压缩十进制 :1 字节表示 2 个十进制数 ; 无符号非压缩十进制 :1 字节表示 1 个十进制数 有符号数 : 有符号二进制数 用补码表示 2015 年 3 月 26 日星期四

More information

幻灯片 1

幻灯片 1 字符串处理是指对一系列的字母或数字的代码进行相同功能的处理 计算机中字符代码一般都采用 ASCII 码, 每个字符的代码占一个字节, 一组字符串存放在一个连续的存储区中 存放在连续的存储区中的这组字符串, 可看为一个数据块 为了提高对字符串 ( 或数据块 ) 的处理效率,8086/8088 指令系统中专门提供了一组对字符串处理的指令, 这些指令包括 : 字符串传送指令 (MOVS) 字符串比较指令

More information

97 04 25 0970002232 97 12 31 1-7 1 2 1 0 1 0 1 0 1 0 1 0 1 0 1 2 24 A1. 0 1 ( 6 ) 2 ( 6 ) 3 4 A1a.? 5 6 0 1 A1b.? 0 1 2 A2. 0 1 A2b. A2c. A2a. A2d. 1 A3. 1 A4 2 0 A4 A3a.?? 0 A4 1 A3b. 0 A4 1 A3c.?? 1

More information

Microsoft PowerPoint - C15_LECTURE_NOTE_05.ppt

Microsoft PowerPoint - C15_LECTURE_NOTE_05.ppt 8088/8086 MICROPROCESSOR PROGRAMMING INTEGER INSTRUCTIONS AND COMPUTATIONS 8088/8086 MICROPROCESSOR PROGRAMMING INTEGER INSTRUCTIONS AND COMPUTATIONS 5.1 Data-Transfer Instructions 5.2 Arithmetic Instructions

More information

C 语言第一章选择 ACACC ACBBA BAADA CBDBC CCCBD C 填空 a/(b*c) 8 28 第二章 选择 DBADB BABAD BA 第三章选择 BCDBB BACDA C 写结果

C 语言第一章选择 ACACC ACBBA BAADA CBDBC CCCBD C 填空 a/(b*c) 8 28 第二章 选择 DBADB BABAD BA 第三章选择 BCDBB BACDA C 写结果 C 语言第一章选择 ACACC ACBBA BAADA CBDBC CCCBD C 填空 1 26 2 2 3 5.5 4 3.5 5 1 6 0 7 a/(b*c) 8 28 第二章 选择 DBADB BABAD BA 第三章选择 BCDBB BACDA C 写结果 1 33 2 2 3-1 4 a=2,b=1 5 26 53 6 *& 7 **1** **3** 第四章选择 CACBB BCDBB

More information

94/03/25 (94 0940002083 94 12 31 C 1-8 (65 29 5 15 1 2 1-23 28 24-27 k1. k1a. 1 2 3 4 k1b. 1 2 3 4 5 k1c. 1 2 ( 3 4 ( 5 k2. 1 A 2 k 3k 4 3 k3k4 k3. k3a. 1 2 3 4 ( k3b. 1 2 k3b1.? 3 ( (D4 k4. 11 12 02

More information

提纲. 1 实验准备. 2 从实模式进入保护模式. 3 小结 陈香兰 ( 中国科学技术大学计算机学院 ) 软件综合实验之操作系统 July 1, / 11

提纲. 1 实验准备. 2 从实模式进入保护模式. 3 小结 陈香兰 ( 中国科学技术大学计算机学院 ) 软件综合实验之操作系统 July 1, / 11 .. 软件综合实验之操作系统 进入保护模式 陈香兰 中国科学技术大学计算机学院 July 1, 2016 陈香兰 ( 中国科学技术大学计算机学院 ) 软件综合实验之操作系统 July 1, 2016 1 / 11 提纲. 1 实验准备. 2 从实模式进入保护模式. 3 小结 陈香兰 ( 中国科学技术大学计算机学院 ) 软件综合实验之操作系统 July 1, 2016 2 / 11 实验准备 实验环境准备

More information

C/C++ - 文件IO

C/C++ - 文件IO C/C++ IO Table of contents 1. 2. 3. 4. 1 C ASCII ASCII ASCII 2 10000 00100111 00010000 31H, 30H, 30H, 30H, 30H 1, 0, 0, 0, 0 ASCII 3 4 5 UNIX ANSI C 5 FILE FILE 6 stdio.h typedef struct { int level ;

More information

Microsoft PowerPoint - 微原-第3章3.ppt [兼容模式]

Microsoft PowerPoint - 微原-第3章3.ppt [兼容模式] 本教案内容 第 3 章 8086CPU 指令系统 1. 汇编语言指令 9. 转移指令 10. 2. 8086 指令分类循环控制指令 11. 子程序调用返回 3. 数据与转移地址的指令寻址方式 12. 中断调用返回指 4. 数据传送类指令令 5. 算术运算类指令 13. 字符串操作指令 6. 逻辑运算类指令 14. I/O 输入输出指令 7. 移位类指令 15. 其它指令 8. 标志位操作指令 16.

More information

Microsoft PowerPoint - Ch3-8086CPUæ„⁄令系ç»�(3)-æŁ°æ“®ä¼€é•†æ„⁄令

Microsoft PowerPoint - Ch3-8086CPUæ„⁄令系ç»�(3)-æŁ°æ“®ä¼€é•†æ„⁄令 2017 版 微机原理与系统设计 第 3 章 8086CPU 指令系统 董明皓, 博士 西安电子科技大学 dminghao@xidian.edu.cn 目录 (12 课时 ) 1 2 3 4 5 汇编语言基本概念 8086 指令分类数据与转移地址的寻址方式 8086 的六类指令总结 微机原理与系统设计 8086CPU 的指令系统董明皓 dminghao@xidian.edu.cn 2 基础知识引入

More information

第三章 宏汇编语言程序设计

第三章 宏汇编语言程序设计 微机原理与接口技术 实验指导书 淮阴师范学院计算机科学与技术系 实验一代码转换 一 实验目的 : 1 掌握顺序 分支程序的设计方法 2 编制顺序 分支程序 3 上机调试顺序 分支程序, 掌握源代码转换的基本方法 4 学会用 INT 21 功能实现人机对话 二 实验内容 本程序所实现的功能是 : 键入小写字母 ( 最多 20 个 ) 以. 号作为结束标志, 输出相应的大写字母 用 INT 21H 中的的

More information

Microsoft Word - 实验8_ADDA.doc

Microsoft Word - 实验8_ADDA.doc 一. 实验目的 实验八数模与模数转换 (1) 了解数 / 模转换器的基本原理, 掌握 DAC0832 芯片的使用方法 (2) 了解模 / 数转换的基本原理, 掌握 ADC0809 的使用方法 二. 实验环境 1. 硬件环境 微型计算机 (Intel x86 系列 CPU) 一台, 清华科教仪器厂 TPC-2003A 微机接口实验装置一台 ; 数字 2. 软件环境 记忆示波器一台, 万用表一台 (1)Windows

More information

微机原理--汇编、连接和调试

微机原理--汇编、连接和调试 微机原理课程 汇编语言程序的编辑 汇编 连接和调试 西安电子科技大学 探测制导系 内容提要 编写汇编语言程序的五个重要步骤 编写源程序 汇编过程 连接过程 汇编语言编程过程 DEBUG 主要功能 DEBUG 命令 程序设计举例 结束语 编写汇编语言程序的五个重要步骤 1. 编写源程序, 如 L1.ASM 2. 汇编源程序, 得到目标代码,L1.OBJ 3. 目标代码文件的连接, 生成可执行文件 L1.EXE

More information

Microsoft PowerPoint - C15_LECTURE_NOTE_05.ppt

Microsoft PowerPoint - C15_LECTURE_NOTE_05.ppt 8088/8086 MICROPROCSOR PROGRAMMING INTEGER INSTRUCTIONS AND COMPUTATIONS The MOVE The move (MOV) instruction is used to transfer a byte or a word of data from a source operand to a destination operand

More information

C/C++ - 函数

C/C++ - 函数 C/C++ Table of contents 1. 2. 3. & 4. 5. 1 2 3 # include # define SIZE 50 int main ( void ) { float list [ SIZE ]; readlist (list, SIZE ); sort (list, SIZE ); average (list, SIZE ); bargragh

More information

51 C 51 isp 10 C PCB C C C C KEIL

51 C 51 isp 10   C   PCB C C C C KEIL http://wwwispdowncom 51 C " + + " 51 AT89S51 In-System-Programming ISP 10 io 244 CPLD ATMEL PIC CPLD/FPGA ARM9 ISP http://wwwispdowncom/showoneproductasp?productid=15 51 C C C C C ispdown http://wwwispdowncom

More information

E170C2.PDF

E170C2.PDF IQ E170C2 2002.3. Rotork Rotork * ( ) * * RotorkIQ - IQ * * PC IQ Insight / Rotork * - Rotork IQ www.rotork.com 5 10 5.1 11 1 2 5.2 11 2 3 5.3 11 3 IQ 3 5.4 11 3.1 3 5.5 IQM12 3.2 3 5.6 IQML12 3.3 4 5.7

More information

网C试题(08上).doc

网C试题(08上).doc 学习中心 姓名 学号 西安电子科技大学网络与继续教育学院 高级语言程序设计 (C) 全真试题 ( 闭卷 90 分钟 ) 题号一二三总分 题分 60 20 20 得分 一 单项选择题 ( 每小题 3 分, 共 60 分 ) 1.C 语言程序的基本单位是 A) 程序行 B) 语句 C) 函数 D) 字符 2. 下列四组选项中, 均是不合法的用户标识符的选项是 A)A B)getc C)include D)while

More information

:,,,, ( CIP ) /,. :, ISBN CIP ( 2001) : : 127, : : : ht t p: / / www. nwpup. com : :

:,,,, ( CIP ) /,. :, ISBN CIP ( 2001) : : 127, : : : ht t p: / / www. nwpup. com : : :,,,, ( CIP ) /,. :, 2001. 8 ISBN 7 5612 1363 8............. 0342 CIP ( 2001) 027392 : : 127, : 710072 : 029-8493844 : ht t p: / / www. nwpup. com : : 787mm1 092mm : 19. 75 : 480 : 2001 8 1 2001 8 1 :

More information

期中考试试题讲解

期中考试试题讲解 一 选择题 ( 一 ) 1. 结构化程序设计所规定的三种基本结构是 C A 主程序 子程序 函数 B 树形 网形 环形 C 顺序 选择 循环 D 输入 处理 输出 2. 下列关于 C 语言的叙述错误的是 A A 对大小写不敏感 B 不同类型的变量可以在一个表达式中 C main 函数可以写在程序文件的任何位置 D 同一个运算符号在不同的场合可以有不同的含义 3. 以下合法的实型常数是 C A.E4

More information

数据库系统概论

数据库系统概论 2. 减法指令 8086/8088 共有 5 条减法指令 1 不带 CF 的减法指令 (SUB) 格式 :SUB DST, SRC 功能 :(1)DST (DST)-(SRC) (2) 根据差设置 6 个状态标志 2 带 CF 的减法指令 (SBB) 格式 :SBB DST, SRC 功能 : (1)DST (DST)-(SRC)-CF (2) 根据差设置 6 个状态标志 3 减 1 指令 (DEC)

More information

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ 考生注意 : 本试卷共七大题, 满分 150 分 考试时间为 3 小时 ; 所有答案均写在答题纸上 ( 注明题号 ), 在此答题一律无效无效 一 选择题 ( 本题共 20 小题, 每小题 2 分, 满分 40 分 ) 1 char ch 1 2 A 0

More information

1

1 1 2 3 4 5 GNUDebugger 6 7 void main(int argc, char **argv){ vulncpy(argv[1]); return; } void vulncpy(char *a){ char buf[30]; strcpy(buf, a); return; } *argv[1] buf Shellcode *argv[1]... &buf &buf 8 strcpy

More information

Microsoft PowerPoint - os_4.ppt

Microsoft PowerPoint - os_4.ppt 行 程 資 科 系 林 偉 川 行 程 概 念 行 程 與 程 式 主 要 的 不 同 點 : 程 式 是 被 放 在 外 部 的 儲 存 裝 置 如 磁 碟 上, 而 行 程 則 被 放 在 記 憶 體 中 程 式 在 儲 存 裝 置 中 是 靜 態 的, 而 行 程 在 記 憶 體 中 是 動 態 的, 它 會 隨 著 一 些 事 件 的 發 生 而 產 生 相 對 的 改 變 行 程, 就 是

More information

没有幻灯片标题

没有幻灯片标题 指针作为函数参数 : 原因 : 1 需要修改一个或多个值,( 用 return 语句不能解决问题 ) 2 执行效率的角度 使用方法 : 在函数原型以及函数首部中需要声明能够接受指针值的形参, 具体的写法为 : 数据类型 * 形参名 如果有多个指针型形参, 则用逗号分隔, 例如 : void swap(int *p1, int *p2) 它说明了形参 p1 p2 是指向整型变量的指针 在函数调用时,

More information

C

C C 2017 3 14 1. 2. 3. 4. 2/95 C 1. 3/95 C I 1 // talkback.c: 2 #include 3 #include 4 #define DENSITY 62.4 5 int main(void) 6 { 7 float weight, volume; 8 int size; 9 unsigned long letters;

More information

Ps22Pdf

Ps22Pdf 1, : ( ),?, :,,,, ( ), 1 180,, ( ) 1 1,, 2 180 ;,, 3 180 ;, n ( n - 2 ),, ( n - 2) 180 1 1, : ( ),.,, 2, (, ) 1 , 3 x + y = 14, 2 x - y = 6 : 1 ( ) : + 5 x = 20, x = 4 x = 4 y = 2, x = 4, y = 2 2 ( ) :

More information

#$%&% () % ()*% +,-. /01 % + (/) " " " 2- %** -340 $%&% 5!$%&% () % ()*% +,-. /01 % + (/) " " " 2- %** -340 /64 7%,(8(, *--9( ()6 /-,%/,65 :$%&

#$%&% () % ()*% +,-. /01 % + (/)    2- %** -340 $%&% 5!$%&% () % ()*% +,-. /01 % + (/)    2- %** -340 /64 7%,(8(, *--9( ()6 /-,%/,65 :$%& ! " "!! " "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! " #$$% & ()*+,-.(*/!0%1 23)4-(4 5).67*(*8. #$$%!9 #$$% #!$1#$!1 #9 19 :9 %; :< #$$% = 0!$ ; = : : : = 1 % #!9 #$%&% () % ()*% +,-. /01 % + (/) " " " 2- %**

More information

高二立體幾何

高二立體幾何 008 / 009 學 年 教 學 設 計 獎 勵 計 劃 高 二 立 體 幾 何 參 選 編 號 :C00 學 科 名 稱 : 適 用 程 度 : 高 二 簡 介 一 本 教 學 設 計 的 目 的 高 中 立 體 幾 何 的 學 習 是 學 生 較 難 理 解 而 又 非 常 重 要 的 一 個 部 分, 也 是 高 中 教 學 中 較 難 講 授 的 一 個 部 分. 像 國 內 的 聯 校

More information

数据库系统概论

数据库系统概论 指令系统 是指 CPU 能完成的所有 指令的集合, 它是在 CPU 设计时就确定了的 所以, 对不同的 CPU, 其指令系统中所包含的具体指令将是各不相同的 但 8088/8086 CPU 的指令系统是完全一样的 8088/8086 CPU 的指令系统可分成下面 9 类 : (1) 数据传送指令 ; (2) 算术运算指令 ; (3) 逻辑运算指令 ; (4) 移位指令 ; (5) 标志处理指令和 CPU

More information

《微机接口技术》总复习题.doc

《微机接口技术》总复习题.doc 计算机接口技术 复习题 第 1 部分概述 本章知识 : 1 微机接口应具备哪些功能? 功能 : 信号转换 提供信号转换的应答信号 外部设备的寻址功能 数据缓冲功能 中断请求功能 可 编程功能 实现对设备的不同操作 2CPU 能直接与外设进行信息交换吗? 为什么? 3 计算机与接口连接的三类数据总线是什么? 哪些是单向传输, 哪些是双向传输的? DB AB CB 4 常见的接口芯片的功能 8254 8250/8251

More information

第4章

第4章 微机原理及应用 主讲 : 谢维成 http://xweicheng.ys168.com scxweicheng@yahoo.com.cn 西华大学电气信息学院 1 第 03 章 80X86 的寻址方式和指令 3.1 指令的格式 3.2 8086/8088 的寻址方式 3.3 指令系统 3.3.1 数据传送指令 3.3.2 算术运算指令 3.3.3 逻辑运算与移位指令 3.3.4 串操作指令 3.3.5

More information

2005.book

2005.book ...4... 4... 7...10... 10... 10... 10... 10... 11... 11 PCC... 11 TB170... 12 /... 12...13... 13 BP150 / BP151 / BP152 / BP155... 14...15... 15... 15... 15... 15... 15... 15... 16 PS465 / PS477... 17 PS692

More information

民 國 105 年 大 專 程 度 義 務 役 預 備 軍 官 預 備 士 官 考 選 簡 章 目 錄 壹 考 選 依 據 1 貳 考 ( 甄 ) 選 對 象 1 參 資 格 規 定 1 肆 員 額 及 專 長 類 別 2 伍 報 名 及 選 填 志 願 日 期 方 式 3 陸 選 填 官 科 (

民 國 105 年 大 專 程 度 義 務 役 預 備 軍 官 預 備 士 官 考 選 簡 章 目 錄 壹 考 選 依 據 1 貳 考 ( 甄 ) 選 對 象 1 參 資 格 規 定 1 肆 員 額 及 專 長 類 別 2 伍 報 名 及 選 填 志 願 日 期 方 式 3 陸 選 填 官 科 ( 民 國 105 年 大 專 程 度 義 務 役 預 備 軍 官 預 備 士 官 考 選 期 程 表 日 期 執 行 項 目 3 月 1 日 (8 時 起 ) 至 3 月 21 日 (17 時 止 ) 網 路 報 名 並 完 成 列 印 3 月 22 日 (17 時 止 ) 各 校 承 辦 人 員 收 報 名 件 截 止 3 月 30 日 4 月 11 日 5 月 18 日 5 月 27 日 (17

More information

Microsoft PowerPoint - CH2_1.ppt [兼容模式]

Microsoft PowerPoint - CH2_1.ppt [兼容模式] 第二章微型计算机指令系统 IA-16 微机系统结构 - 工作原理 8086/8088 微处理器周期性地执行指令时钟 /T 周期 指令周期 总线周期 ( 内部操作 / 总线操作 ) 指令 --- 微机算术 逻辑和控制功能的实现基础 重点 : 信息交换方法 ( 数据流 ), 程序流控制 *1 目标地址传送 * 寻址方式 2 标志传送 3 转移控制( 转移指令 过程调用 中断 ) 微机系统与接口东南大学

More information

C

C C 2017 4 1 1. 2. while 3. 4. 5. for 6. 2/161 C 7. 8. (do while) 9. 10. (nested loop) 11. 12. 3/161 C 1. I 1 // summing.c: 2 #include 3 int main(void) 4 { 5 long num; 6 long sum = 0L; 7 int status;

More information

xilinx FPGA 串口设计笔记 在设计中, 需要用 FPGA 读取 GPS 内部的信息,GPS 的通信方式为串口, 所以在 FPGA 中移植了串口程序 本次移植的程序源代码是特权的串口程序, 本以为移植应该很快就能完成, 但其中还是出了一写小问题, 耽误了不少的时间, 下面将问题进行一个总结!

xilinx FPGA 串口设计笔记 在设计中, 需要用 FPGA 读取 GPS 内部的信息,GPS 的通信方式为串口, 所以在 FPGA 中移植了串口程序 本次移植的程序源代码是特权的串口程序, 本以为移植应该很快就能完成, 但其中还是出了一写小问题, 耽误了不少的时间, 下面将问题进行一个总结! xilinx FPGA 串口设计笔记 在设计中, 需要用 FPGA 读取 GPS 内部的信息,GPS 的通信方式为串口, 所以在 FPGA 中移植了串口程序 本次移植的程序源代码是特权的串口程序, 本以为移植应该很快就能完成, 但其中还是出了一写小问题, 耽误了不少的时间, 下面将问题进行一个总结! 以下是串口的时序 : 在设计中, 耽误时间最长的问题就是数据老是出错, 为了找出问题的所在, 用示波器观察了

More information

. v dx v d () () l s dl s d (_) d () v s v s () a dv a d (_) ( ) ( ) x- = v- = = v 0 = m/s a = = m/s 2 a- = ( ) x- v- a- Page 2 of 20

. v dx v d () () l s dl s d (_) d () v s v s () a dv a d (_) ( ) ( ) x- = v- = = v 0 = m/s a = = m/s 2 a- = ( ) x- v- a- Page 2 of 20 Page 1 of 20 . v dx v d () () l s dl s d (_) d () v s v s () a dv a d (_) ( ) ( ) x- = v- = = v 0 = m/s a = = m/s 2 a- = ( ) x- v- a- Page 2 of 20 (1) x v a (2) x v a x v (3) x v a x v a x v Page 3 of

More information

Microsoft PowerPoint - CH2_1.ppt [兼容模式]

Microsoft PowerPoint - CH2_1.ppt [兼容模式] 第二章微型计算机指令系统 IA-16 微机系统结构 - 工作原理 8086/8088 微处理器周期性地执行指令 时钟 /T 周期 指令周期 总线周期 ( 内部操作 / 总线操作 ) 指令 --- 微机算术 逻辑和控制功能的实现基础 重点 : 信息交换方法 ( 数据流 ), 程序流控制 *11 目标地址传送 * 寻址方式 2 标志传送 3 转移控制 ( 转移指令 过程调用 中断 ) 微机系统与接口东南大学

More information

# " $ % $ # ( $ $ %% * $ %+ $, -., / ", 0, %, %%%%, " % 2 %% #. $ 3 *3 %45 6" %% 9: :" : "

#  $ % $ # ( $ $ %% * $ %+ $, -., / , 0, %, %%%%,  % 2 %% #. $ 3 *3 %45 6 %% 9: : : #$$% #$$% #$$ #$$% #$$% #$$ #$$ # $ " #($ # $ #$ #($ *$ #$ $+ %$ #* # *, #+ *, -#+ -, #%+, " " #$$% + #+ -+ #$$( +." HI # 6 J : HI - 6 J #. KL38 ( /0. KL # 6 38 # ( : 4 G7 < $ 7 6 : 6 58 758 % 7 6 < =

More information

Microsoft PowerPoint - C15_LAB_MTS86_INTRO

Microsoft PowerPoint - C15_LAB_MTS86_INTRO INTRODUCTION TO THE MTS-86C MICROCOMPUTER TRAINER What s MTS-86? 7-4 7-5 7-7 7-3 7-2 7-3 7-6 2 4 5 3 7-6 7-8 7-3 8 4 5 3 6 37 微處理機原理與應用國立台灣大學生物機電系 SPECIFICATION () CPU: 886 (2) Display Unit: LCD (6x2 Line)

More information

2010-10-8 22:23:13 solo estoy(276441700) 老 师 SIMD 技 术 ALU 同 时 处 理 的 数 据 长 度 只 能 是 ALU 最 大 位 数 的 整 数 分 之 一 对 吗 2010-10-8 22:25:16 solo estoy(276441700)

2010-10-8 22:23:13 solo estoy(276441700) 老 师 SIMD 技 术 ALU 同 时 处 理 的 数 据 长 度 只 能 是 ALU 最 大 位 数 的 整 数 分 之 一 对 吗 2010-10-8 22:25:16 solo estoy(276441700) 微 机 系 统 与 接 口 技 术 群 答 疑 集 锦 08 级 学 生 QQ 群 答 疑 杨 全 胜 整 理 2011.9 2010-10-8 22:23:13 solo estoy(276441700) 老 师 SIMD 技 术 ALU 同 时 处 理 的 数 据 长 度 只 能 是 ALU 最 大 位 数 的 整 数 分 之 一 对 吗 2010-10-8 22:25:16 solo estoy(276441700)

More information

( CIP).:,3.7 ISBN TB CIP (3) ( ) ISBN O78 : 3.

( CIP).:,3.7 ISBN TB CIP (3) ( ) ISBN O78 : 3. ( CIP).:,3.7 ISBN 7 568 383 3.......... TB CIP (3) 334 3 37 ( ) 64536 www.hdlgpress.com.c 7879 6 9.75 479 3 7 3 7 45 ISBN 7 568 383 3O78 : 3. 995,.,.,.,. :,,,,.. :,,,,,,.,,,,.,,. ,,.,,,.,,,.,,,,.,.,,,

More information

Microsoft Word - 实验4_IO控制_INT.doc

Microsoft Word - 实验4_IO控制_INT.doc 一. 实验目的 实验四 (1) 简单输入输出 掌握简单并行输入输出接口的工作原理及使用方法, 进一步熟悉掌握输入输出单元的功能和使用 二. 实验环境 1. 硬件环境微型计算机 (Intel x86 系列 CPU) 一台, 清华科教仪器厂 TPC-2003A 微机接口实验装置一台, 扩充芯片 74LS273/74LS244; 数字记忆示波器一台. 2. 软件环境 (1)Windows XP 操作系统,

More information

第七章 中断

第七章 中断 计算机组成原理 总结 图说 COD llxx@ustc.edu.cn 计算科学 (Computing) 计算机组成 :how computers work 硬盘 电源导线和电缆 软驱 内存 扩展槽 扩展卡 主板 微处理器 (CPU) 各种外设接口, 包括 : 键盘 鼠标 显示器 USB 声卡 网卡 并行口等 CPU 风扇支架 PCI 扩展槽 IDE 内存 CPU 硬条插盘接插槽槽口 华硕 P4S533-MX

More information