南昌大学计算机专业微机原理实验一
南昌大学 微机原理 实验一数据大小比较

南昌大学实验报告
学生姓名:学号:专业班级:
实验一数据大小比较
实验内容
自行定义两个数据(字节或字均可,带符号数或无符号数均可),编程实现两个数的大小比较。
若NUM1>NUM2,AL寄存器送字符﹥,并在屏幕上显示该字符;若NUM1<NUM2,AL寄存器送字符﹤,并在屏幕上显示该字符;若NUM1=NUM2,AL寄存器送字符﹦,并在屏幕上显示该字符。
实验程序
d ata segment
num1 db 33h
num2 db 44h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov al,num1
mov ah,num2
cmp ah,al
jge next_1
mov dl,'>' mov ah,2
int 21h
jmp next_3 next_1:
cmp ah,al jg next_2 mov dl,'=' mov ah,2
int 21h
jmp next_3 next_2:
mov dl,'<' mov ah,2
int 21h
jmp next_3 next_3:
int 21h
mov ah,4ch
int 21h
code ends
end start
过程及实验结果
实验心得
通过本次实验,了解与熟悉了软件的应用步骤与过程,同时进行了最基础的程序设计,掌握了最基础的汇编语言的应用。
微机原理实验报告

微机原理实验报告概述:微机原理是计算机科学与技术专业中的一门重要课程,通过实验学习,可以加深对计算机内部运行原理的理解,提高软硬件的开发和调试能力。
本实验报告将介绍我对微机原理实验的学习和思考。
实验一:二进制转换实验在这个实验中,我首先了解了二进制数的概念以及其和十进制数的转换方法。
通过实际操作,我加深了对计算机内部数据表示方式的理解。
这对于后续学习计算机系统结构和编程语言至关重要。
实验二:逻辑门电路实验逻辑门电路是计算机硬件的基础组成部分,通过实验,我学会了使用逻辑门芯片构建各种逻辑电路,并能够通过真值表分析和验证逻辑电路的正确性。
这对于理解计算机内部的数据处理和控制逻辑有着直接的帮助。
实验三:运算器设计实验在这个实验中,我通过学习和设计算术逻辑单元(ALU),了解了计算机的算术操作过程,并能够通过运算器实现基本算术运算。
这对于理解计算机内部数据的处理和计算机指令的执行有着重要的意义。
实验四:存储器与外设实验存储器是计算机系统的重要组成部分,通过实验,我深入了解了存储器的类型、组织结构和访问方式,并通过外设与存储器的交互,实践了计算机系统的输入和输出过程。
实验五:微处理器实验微处理器是计算机系统中最核心的部件,通过实验,我学习了微处理器的基本运行原理,能够通过汇编语言编写程序,并通过微处理器执行程序实现特定的功能。
这个实验为我今后学习计算机体系结构和操作系统打下了坚实的基础。
实验总结:通过这几个实验,我深入了解了微机原理课程的实践内容和相关知识。
实验的过程中,我不仅学会了使用仪器设备和工具,还培养了自己的动手能力和团队合作精神。
通过不断的实践,我对计算机内部结构和运行原理有了更深刻的理解,也提高了我的问题解决能力和创新思维。
未来展望:微机原理实验的学习只是计算机科学与技术专业中的一小部分。
我希望在今后的学习过程中能加深对计算机体系结构、操作系统、编程语言等方面的学习,并不断深入钻研,成为一名优秀的计算机科学与技术专业人才。
南昌大学微机原理AD转换实验

实验九 A/D转换实验一.实验要求编程用查询方式采样电位器输入电压,并将采样到的结果实时地通过8279显示在数码管上。
(只须显示一位即可。
用0~F表示0~+5V电压)。
二.实验目的1.掌握A/D芯片AD0809的转换性能及编程方法。
2.学习A/D芯片与其他芯片(如8279)接口的方法,初步建立系统的概念。
三.实验电路及连线CS8279已固定接至88译码238H插孔,A/D的CS0809插孔接译码处208H插孔, 0809的IN0接至19模块电位器PR3的中心抽头插孔。
四.实验说明本实验中所用A/D转换芯片为逐次逼近型,精度为8位,每转换一次约100微秒,所以程序若为查询式,则在启动后要加适当延时。
另外,0809芯片提供转换完成信号(EOC),利用此信号可实现中断采集。
五.实验程序框图六.实验程序:Z8279 EQU 239HD8279 EQU 238HD0809 EQU 208HLEDMOD EQU 00 ;左边输入,八位显示外部译码八位显示LEDFEQ EQU 38H ;扫描频率CODE SEGMENTASSUME CS:CODE,DS:codeSTART: push cspop dscall delayMOV DX,Z8279MOV AL,LEDMODOUT DX,ALMOV AL,LEDFEQOUT DX,ALMOV CX,06HXZ: MOV DX,D8279MOV AL,00HOUT DX,ALLOOP XZMOV DX,D8279MOV AL,5eHOUT DX,ALMOV DX,D8279MOV AL,77HOUT DX,AL ;以上为写(AD)NOPbg:mov dx,D0809mov al,0out dx,alcall delayin al,dxmov cl,04hror al,cland al,0fhpush axmov dx,z8279mov al,83hout dx,alpop axLEA BX,LEDXLATMOV DX,D8279 ;将AL中内容写到数码管上OUT DX,ALcall delayJMP BGdelay proc nearpush cxmov cx,0f00hloop $pop cxretdelay endpLED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H DB 5EH,79H,71HCODE ENDSEND START。
南昌大学微机原理实验报告

实验报告实验课程:汇编原理与微机接口技术学生姓名:信念学号:520---1314专业班级:网络间谍***2***年 12 月 12 日目录一、实验一 (3)二、实验二 (5)三、实验三 (8)四、实验四 (10)五、实验五 (12)六、实验六 (18)南昌大学实验报告一学生姓名:信念学号:520---1314 专业班级:网络间谍***班实验类型:□验证□ 综合▥设计□ 创新实验日期: 2***.11.3 实验成绩:一、实验名称实验设备简介二、实验内容了解并熟悉SICElab『赛思』开放式综合实验/仿真系统及G2010+实验平台、实验设备。
三、实验目的了解实验设备、搭建实验平台四、实验器材(1)G2010+实验平台1台(2)G6W仿真器1台(3)连线若干根五、实验设备及说明1 仿真工具伟福公司所有的产品,包含一个项目管理器,一个功能强大的编辑器,汇编Make、build和调试工具并提供一个与第三方编译器的接口2 实验平台新型实用模块:(1)LCD液晶实验(2)点阵LED广告屏(3)DS12887 实时钟(4)红外线发送、接收(5)直流电机恒速(6)电子琴模拟实验(7)串行ROM/I2C ROM (8)步进电机变速传感器实验:(1)温度传感器(2)压力传感器(3)霍尔传感器(4)红外传感器传统实验模块:(1)模数转换A/D0809(2)数模转换D/A0832(3)8155控制键显(4)V/F转换LM331(5)串口通讯MAX232(6)音响实验LM386 7)EPROM27C256扩展(8)RAM6264扩展(9)微型打印机接口(10)PWM模块通用实验模块:(1)模拟信号发生器(2)开关量发生器(3)发光二极管组(4)信号发生器(5)74LS138译码器(6)分频器电路(7)LED6位数码管(8)20个键盘组(9)逻辑笔(10)常用门电路自由实验模块:由DIP40锁紧插座及240个插孔组成,CPU所有信号均以插孔方式引出,还设计了常用门电路、晶振源、电源插孔等,可以完成以上实验模块的组合实验以及由实验者自行命题和新器件、新方案的实验,使得实验方式和内容不受限制。
微机原理实验报告软件实验1-4

微机原理实验报告学院:算机科学与软件教育学院一、实验目的1. 掌握存储器读写方法2. 了解存储器的块操作方法二、实验原理存储器读写和块操作三、实验设备仪器及材料计算机,WA VE 6000软件四、实验过程S1.asm 代码流程图data segmentBlock db 256 dup(55h)data endscode segmentassume cs:code, ds:datastart proc nearmov ax, datamov ds, axmov bx, offset Block ; 起始地址mov cx, 256 ; 清256 字节Again:mov [bx], byte ptr 0inc bx ; 地址+1Loop Again; 记数减一jmp $ ;死循环code endsend start五、实验步骤(1) 进入Wave6000,输入程序并检查,保存程序。
(2) “编译”程序。
(3) “全速执行”程序。
(4) “暂停”程序运行,在“数据窗口(MEMOREY)”查看0400H起始的单元内容,并记录。
(5) 在指令“jmp $”处设断点。
“全速执行”程序。
(6) 在“数据窗口(MEMOREY)”查看0400H起始的单元内容,记录并分析实验结果。
六、实验结果及总结运行前:运行后:2、调试:如何将存储器块的内容置成某固定值(例全填充为0FFH)?总结:通过本实验,我了解到单片机读写存储器的读写方法,同时也了解到单片机编程,调试方法。
学会内存的移动方法,也加深对存储器读写的认识。
微机原理实验报告学院:算机科学与软件教育学院实验课程名微机原理实验成绩实验项目名称实验二、二进制到BCD码转换指导老师1. 了解BCD值和ASCII值的区别。
2. 了解如何将BCD值转换成ASCII值。
3. 了解如何查表进行数值转换及快速计算。
二、实验原理ASCII码表三、实验设备仪器及材料计算机,WA VE 6000软件data segmentResult db 3 dup(?)data endscode segmentassume cs:code, ds:datastart proc nearmov ax, datamov ds, axmov ax, 123mov cl, 100div clmov Result, al ; 除以 100,得百位数mov al, ahmov ah, 0mov cl, 10div clmov Result+1, al ; 余数除以10, 得十位数mov Result+2, ah ; 余数为个位数jmp $code endsend start代码流程图五、实验步骤1. 进入Wave6000,输入程序,并检查,保存程序。
微机原理实验(含解答程序)

微机原理实验(含解答程序)-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN微机原理实验课题(共16个内容,附解答程序)(汇编程序可以使用MASM FOR WINDOWS)1.将偏移地址为2000h开始的100个单元依次设置为0~99。
2.将两个64位的二进制数相加,记录相加的和以及各个状态标志的值。
3. 编写程序,在屏幕上分行显示自己的姓名、学号。
4. 编写程序,通过键盘输入0——9之间的一个数字,利用查表法计算其平方。
在DEBUG下查看执行结果。
5. 用分支结构设计程序实现符号函数100010xy xx>⎧⎪==⎨⎪-<⎩,要求x和y存放在内存单元中,并将判断的结果在屏幕上显示输出。
6. 在键盘上输入一个字符,判断是否为小写字母,若不是,显示错误信息,若是,则将其转换为大写字母并显示。
7. 在键盘上输入一个字符,判断它是一个数字、大写字母还是小写字母,若为数字,则显示digital,若为字母,显示letter,否则,显示other。
8. 将字节型变量x的低四位(一位十六进制数)以十六进制数的形式显示。
9. 编制程序计算S=1+2·3+3·4+4·5+……+N(N+1)+……直到N (N+1)大于200为止,并将结果由屏幕上显示出来。
10. 将字形变量x以二进制数的形式在屏幕上显示输出。
11. 将字形变量x以十六进制数的形式在屏幕上显示输出。
12. 将内存单元缓冲区中的符号数(20个)按从小到大的顺序排列,并以十六进制数的形式显示。
13. 编制程序计算S=1+2+3+……+N,并将结果由屏幕上显示出来。
(要求:在屏幕上显示提示信息,提示输入N,N用十六进制表示,且N小于0FH,用子程序实现(段内),将输入的结果用十六进制数输出显示,显示结果的程序用子程序是实现(段间))。
14.要求在键盘上输入一个小于四位的十进制数,将其转换为二进制数存放,并讲转换后的结果以十六进制数的形式在屏幕上显示出来。
南昌大学微机原理开关状态显示实验

实验三开关状态显示实验
一.实验要求
编写程序,设定8255的PA口为开关量输入,PC口为开关量输出,要求能随时将PA口的开关状态通过PC口的发光二极管显示出来。
二.实验目的
学习使用8255各个口的不同工作方式。
三.实验电路及连线
将K0~K7用连线连至8255的PA0~PA7,将L0~L7用连线连至8255的PC0~PC7,8255CS用连线连至译码处的200H这个插孔。
四.实验说明
本实验要求8255工作于方式0,PA口设置为输入,PC口设置为输出,输入量为开关量,通过8255可实时显示在LED灯上。
按下HALT或RST键则返回监控。
五.实验程序框图
六. 实验程序如下:
C8255 EQU 206H
P8255A EQU 200H
P8255C EQU 204H
DATA SEGMENT
DATA ENDS
STACK SEGMENT STACK
STA DW 50 DUP(?)
TOP EQU LENGTH STA
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK
START:
MOV DX,C8255 ;设置为A口输入,C口输出 MOV AL,90H
OUT DX,AL
BG: MOV DX,P8255A ;将A口状态从C口输出
IN AL,DX
MOV DX,P8255C OUT DX,AL
JMP BG
CODE ENDS
END START。
微机原理实验报告_实验讲义_实验步骤

第一部分的软件实验,开机启动选WIN7系统,在windows命令框里输入“cmd”进DOS, 在DOS里输入相关命令进入D盘或E盘拷进实验软件的目录,运行TD以及后面汇编、连接、运行汇编程序,都在这个目录下进行。
第二部分的接口实验,开机启动选DoS系统,就直接进入DOS 了,之后还是输入相关命令进入D盘或E 盘拷进实验软件的目录,运行TD或汇编、连接、运行汇编程序实验箱用的中断号和端口地址,运行PoRTR程序,就可以看到。
接口实验,开机启动选DOS系统,就直接进入DC)S 了,之后还是输入相关命令进入D盘或E盘拷进实验软件的目录,运行TD或汇编、连接、运行汇编程序。
硬件实验三:实验箱用的中断号和端口地址,运行PoRTR程序,就可以看到。
3、参考程序1:(程序名:E8253_1.ASM)“
iββQ1l sou 0d400h-0280h ;0d400h为实验箱的接口地址,应改为运行PoRTR程序自动获取的那个接口地址. io8253_ctrl eαu ioport+283h.' io8253_cnt0 WaU ioport+280h^∙ code segments
这个端口号,在dos环境下利用PORT命令可以获取1/0端口地址
芯片:实验三使用的是硬件板上的8254计数器
接线图为:。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
南昌大学实验报告
学生姓名:郑俊学号:6100410235 专业班级:计科103班
实验类型:□验证□综合□设计□创新实验日期:2013—11—18 实验成绩:
实验一用74LS245读入外部数据
1、实验要求:
利用实验平台上的锁进插座,扩展74LS245,来读入开关状态,然后在数码管上显示出来。
2、实验目的:
(1)了解CPU常用的端口连接总线的方法。
(2)掌握用74LS245进行数据读入或输出。
3. 实验器材:
(1)G2010+实验平台 1 台(2)G6W仿真器 1 台(3)连线若干根
(4)74LS245芯片 1 片(5)万用表 1 块(6)Lab8088板 1 块4、实验电路:
5、实验说明:
一般情况下,CPU的总线会挂有很多器件,如何使这些器件不造成冲突,这就要使用一些总线隔离器件,例如74LS245就是一种。
74LS245是三态总线收发器,利用它既可以输出也可输入数据。
本实验74LS245的片选地址连译码器的0A000H-0AFFFH孔,读这个地址,就是从74LS245读回开关的值。
可以用单步的方式执行程序,改变开关状态,观察读回的值。
6、实验步骤:
把74LS245的A0-A7脚连总线插孔D0-D7,B0-B7脚连开关量发生器K0-K7孔,总线插孔的/RD与译码器YC2(0A000H-0AFFFH)孔相或非,再取反后连74LS245的第19脚。
74LS245的第1脚接地。
特别强调:74LS245的第10脚接地,第20脚+5V.
7、程序框图:
8、程序清单:(IN8088A\B01.ASM)
OUTBIT equ 0e101h ; 位控制口
CLK164 equ 0e102h ; 段控制口(接164时钟位) DA T164 equ 0e102h ; 段控制口(接164数据位) IN_KEY equ 0e103h ; 键盘读入口
CS245 equ 0A000h
data segment
LEDBuf db 6 dup(?) ; 显示缓冲
Num db 1 dup(?) ; 显示的数据
DelayT db 1 dup(?)
LEDMAP: ; 八段管显示码
db 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07h
db 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71h data ends
code segment
assume cs:code, ds:data
Delay proc near
push ax ; 延时子程序
push cx
mov al, 0
mov cx,ax
loop $
pop cx
pop ax
ret
Delay endp
DisplayLED proc near
mov bx, offset LEDBuf
mov cl, 6 ; 共6个八段管
mov ah, 00100000b ; 从左边开始显示DLoop:
mov dx, OUTBIT
mov al, 0
out dx,al ; 关所有八段管
mov ch, 8 ; 送164
DLP:
push ax
mov ah, 0
test al, 80h
jz GN1
mov ah, 1
GN1:
mov dx, DAT164 ; 输出数据位
mov al, ah
and al,0fdh
out dx, al
mov dx, CLK164 ; 送出时钟脉冲
;mov al, 1
or al,02h
out dx, al
;mov al, 0
and al,0fdh
out dx, al
pop ax
shl al, 1
dec ch
jnz DLP
mov dx, OUTBIT
mov al, ah
out dx, al ; 显示一位八段管
push ax
mov ah, 1
call Delay
pop ax
shr ah, 1
inc bx
dec cl
jnz DLoop
mov dx, OUTBIT
mov al, 0
out dx,al ; 关所有八段管
ret
DisplayLED endp
Start proc near
mov ax, data
mov dx,0e100h
mov al,03h
out dx,al
mov LEDBuf, 0ffh ; 显示8.8.8.8.
mov LEDBuf+1, 0ffh
mov LEDBuf+2, 0ffh
mov LEDBuf+3, 0ffh
mov LEDBuf+4, 0
mov LEDBuf+5, 0
MLoop:
call DisplayLED ; 显示
mov dx, CS245 ; 读入开关值
in al, dx
and al, 0fh
mov ah, 0
mov bx, offset LEDMAP
add bx, ax
mov al, [bx]
mov LEDBuf+5, al
jmp MLoop
Start endp
code ends
end start
9、实验小结:
实验过程中,我们修改了一些小地方,使得他能够完全的显示输入的数据,修改内容如下MLoop:
call DisplayLED ; 显示
mov dx, CS245 ; 读入开关值
in al, dx
mov bl,al
and al, 0fh
mov ah, 0
mov bx, offset LEDMAP
add bx, ax
mov al, [bx]
mov LEDBuf+5, al
mov al,bl
shr al
mov ah,0
mov bx, offset LEDMAP
add bx, ax
mov LEDBuf+5, al
jmp MLoop
这样修改后能够完全的显示出输入的数据,不会只显示低四位了;
通过实验,我了解了如何使用74LS345进行数据的输入输出,如何连接系统总线;。