微机原理与接**术实验一。
利用debug调试程序段。
实验内容:一、练习常见的debug命令。参照“masm for windows集成实验环境”的“debug命令”部分。将所有命令练习一遍。
二、练习8086的主要指令:数据传送指令、算数运算指令。
三、考核题:设计并开发程序,实现如下功能:(1)学号后两位+99;(1)学号后两位-99;(3)学号后两位*99;(4)99/学号后两位。
考核题实验步骤:(以学号1、加法为例,)
1.在开始-运行中,输入debug
2.敲a 100,以便从100行初开始输入汇编**。
3.输入如下**。
mov ax 1
add ax 1
4.用t=100单步执行看寄存器变化,ax变为1;继续敲t,看结果,ax变为9a
微机原理与接**术实验二。
逻辑实验。实验内容:
一、熟悉“masm for windows集成实验环境”。参照“masm for windows集成实验环境”的“软件应用问题解答”和“简单的入门程序实例”部分,边看帮助边操作,掌握该实验环境的使用。
二、练习8086的主要指令:逻辑运算指令。
三、考核题:设计并开发程序,实现如下功能:(1)测试学号后四位的bit14,bit12,bit5,bit2,bit0是否都是1; (2)测试学号后四位的bit13,bit11,bit5,bit2,bit0是否都是0。
考核题实验步骤:
1)(以学号1025)
mov ax,0001000000100101b
and ax,0101000000100101b
sub ax,0101000000100101b
ax结果为0,则全是1,结果不为0,则不全是1。
2)(以学号1025)
mov ax,0001000000100101b
and ax,0010100000100101b
sub ax,00h
ax结果为0,则全是0,结果不为0,则不全是0。
微机原理与接**术实验三。
移位运算实验。
实验内容:一、练习8086的主要指令:移位指令。
三、考核题:设计并开发程序,实现如下功能:(1)用移位指令实现:学号后两位*6. (2)用移位指令实现:学号后两位/8.
考核题实验步骤:
1)(以学号2)
mov ax,2
sal ax,1
mov bx,ax
sal ax,1
add ax,bx
2)(以学号16)
mov ax,16
sar ax,1
sar ax,1
sar ax,1
微机原理与接**术实验四。
顺序程序实验。
实验内容:一、练习顺序程序结构,实现教材上相关例题。
二、考核题:
用顺序结构,实现功能:编程计算以下4个数的和,结果保存在bx寄存器中:0123h、0456h、0789h、学号后两位
考核题实验步骤:
mov ax, 0123h
add ax, 0456h
add ax, 0789h
add ax, 0023h
微机原理与接**术实验五
分支程序实验。
实验内容:一、练习分支程序结构,实现教材上相关例题。
二、考核题:
用分支结构,实现功能:当用户用键盘输入1~4之间的数字时,屏幕上显示出学号对应的后四位数字。即用户输入1,显示学号最后1位数字;用户输入2,显示学号倒数第2位数字;用户输入3,显示学号倒数第3位数字;用户输入42,显示学号倒数第4位数字。
考核题实验步骤:
do: mov ah,01 ;从键盘接收收用户输入的数字选项。
int 21h
sub al, 30h ;将数字选项的ascii码转换为数字。
cmp al, 01
je disp1
cmp al, 02
je disp2
cmp al, 03
je disp3
cmp al, 04
je disp4
jmp do ;输入的不是'1'~'5'则接收下一个输入字符。
disp1: mov dl,'1'
mov ah,02
int 21h
jmp do
disp2: mov dl,'2'
mov ah,02
int 21h
jmp do
disp3: mov dl,'3'
mov ah,02
int 21h
jmp do
disp4: mov dl,'4'
mov ah,02
int 21h
jmp do
微机原理与接**术实验六。
循环程序实验。
实验内容:一、练习循环程序结构,实现教材上相关例题。
二、考核题:
用循环结构,实现功能:当用户用键盘输入1~4之间的数字时,屏幕上显示出学号对应的后四位数字。即用户输入1,显示学号最后1位数字;用户输入2,显示学号倒数第2位数字;用户输入3,显示学号倒数第3位数字;用户输入42,显示学号倒数第4位数字。
考核题实验步骤:
datas segment
;此处输入数据段**。
xh db '7','8','9','5'
datas ends
stacks segment
;此处输入堆栈段**。
stacks ends
codes segment
assume cs:codes,ds:datas,ss:stacks
start:
mov ax,datas
mov ds,ax
;此处输入**段**。
do: mov ah,01 ;从键盘接收收用户输入的数字选项。
int 21h
sub al, 30h ;将数字选项的ascii码转换为数字。
mov cl,04
wh: cmp al, cl
je disp1
loop wh
jmp do ;输入的不是'1'~'4'则接收下一个输入字符。
disp1: lea bx,xh
mov ch,0
dec cx
add bx,cx
mov dl,[bx]
mov ah,02
int 21h
jmp do
mov ah,4ch
int 21h
codes ends
end start
微机原理与接**术实验七。
dos功能调用实验。
实验内容:一、练习dos功能调用,实现教材上相关例题。
二、考核题:
dos功能:用户从键盘输入学号,屏幕显示出“welcome ”+学号。
考核题实验步骤:
datas segment
;此处输入数据段**。
hy db 'weclcome $'
no db 5,0 ;5表示允许输入的数字数目,0表示间隔。
xh db 1
datas ends
stacks segment
;此处输入堆栈段**。
stacks ends
codes segment
assume cs:codes,ds:datas,ss:stacks
start:
mov ax,datas
mov ds,ax
;此处输入**段**。
lea dx,no ;接收学好输入,注意只能收入5-1个字符,且最后一个必须为'$'
mov ah,0ah
int 21h
lea dx,hy ;打印weclcome
mov ah,09h
int 21h
lea dx,xh ;打印学号。
mov ah,09h
int 21h
mov ah,4ch
int 21h
codes ends
end start
微机原理与接**术实验八。
子程序实验。
实验内容:一、练习子程序调用,实现教材上相关例题。
二、考核题:
子程序调用:主程序接受用户输入的数值n,并调用累加子程序(1+2+…+n)实施累加,主程序将结果显示在屏幕上。
考核题实验步骤:
datas segment
;此处输入数据段**
datas ends
stacks segment
;此处输入堆栈段**。
stacks ends
codes segment
assume cs:codes,ds:datas,ss:stacks
start:
mov ax,datas
mov ds,ax
;此处输入**段**。
do: mov ah,01 ;从键盘接收收用户输入的数字选项。
int 21h
sub al, 30h ;将数字选项的ascii码转换为数字。
call cubic
jmp do
mov ax, 4c00h
int 21h
cubic proc
mov cl,al
mov ch,0
mov bl,0
doadd:add bl,cl
loop doadd
displ : mov al,bl
mov ah,0
mov bl,10
div bl
mov bx,ax
add bh, 30h ;将数字选项的ascii码转换为数字。
mov dl,bh
mov ah,02
int 21h
cmp bl,0
ja displ
retcubic endp
codes ends
end start
微机原理实验答案
1 题目 编程将 ax 2387 bx 192fh cx 9256中的无符号数按由大到小排序,上机编程调试出程序,并将程序及排序结果记录在下面。code segment assume cs code start mov ax,2387 mov bx,192fh mov cx,9256 cmp ax,...
上机实验作业答案
答案 一。1 site 把搜索范围限定在特定站点中。有时候,您如果知道某个站点中有自己需要找的东西,就可以把搜索范围限定在这个站点中,提高查询效率。msn 注意,site 后面跟的站点域名,不要带 http 另外,site 和站点名之间,不要带空格。双引号 使用双引号 进行词组检索,利用双引号查询完...
上机实验1答案
实验目的 1.熟悉vc 6.0调试环境,掌握运行一个c程序的基本步骤。2.掌握基本输入 输出函数的使用。3.能够编写简单的顺序结构程序,实现简单的数据处理。4.掌握c程序的查错方法。实验内容 一 调试示例。改正下列程序中的错误,求华氏温度1000f对应的摄氏温度。计算公式如下,其中 c表示摄氏温度,...