将ASCII码表示的十进制数转换为二进制数
华南理工大学微机与接口实验报告(四实验,题目原理流程图代码截图完整版)

微机原理实验报告班 级:2012级电子科学与技术卓工班级电子科学与技术卓工班姓 名: 黄中一黄中一 学 号: 201236460273序 号:评阅分数:评阅分数:实验一一、实验目的1、学会如何建立汇编源文件ASM2、学会调用MASM 宏汇编程序对源文件进行汇编,获得目标程序宏汇编程序对源文件进行汇编,获得目标程序 OBJ 及LST 列表文件列表文件3、学会调用LINK 连接程序汇编后的目标文件OBJ 连接成可执行的文件连接成可执行的文件EXE 4、学会使用DEBUG 调试程序把可执行文件装入内存并调试运行,用D 命令显示目标程序,用U 命令对可执行文件反汇编,用G 命令运行调试。
命令运行调试。
二、实验设备装有MASM 软件的IBM PC 机三、实验内容1、汇编程序对源程序进行编译,生成扩展名为OBJ 的目标文件;连接程序是将目标程序和库文件进行连接、定位,生成扩展名为EXE 的可执行文件;调试程序是对目标文件进行调试,验证它的正确性。
是对目标文件进行调试,验证它的正确性。
2、DEBUG 程序各种命令的使用方法程序各种命令的使用方法功能功能命令格式命令格式 使用说明使用说明显示内存单元内容显示内存单元内容D 地址地址从指定地址开始显示40H 个字节或80H 个字节个字节 修改内存单元内容修改内存单元内容 E 地址地址先显示地址和单元内容等待输入修改的内容输入修改的内容检查和修改寄检查和修改寄存器的内容存器的内容R 显示全部寄存器和标志位及下条指令单元十六进制数码和反汇编格式和反汇编格式反汇编反汇编U 地址地址从指定地址开始反汇编16个或32个字节个字节 汇编汇编 A 地址地址从指定地址直接输入语句并从指定指定汇编装入内存从指定指定汇编装入内存跟踪跟踪 T =地址=地址 从指定地址开始逐条跟踪指令运行运行 G =地址=地址无断点,执行正在调试的指令执行正在调试的指令 退出退出Q退出DEBUG 返回DOS3、实验过程①、在edit 环境,写字板,记事本等中输入源程序。
实验指导书

实验一系统认识实验一、实验目的掌握TDN86/51教学系统的基本操作二、实验设备TDN86/51教学实验系统一台三、实验内容及步骤1.系统认识实验(1)(1)程序的输入与修改从3500H内存单元开始建立0-15共16个数据。
实验步骤a.使用串行通讯电缆将实验系统与PC微机相连。
b.将位于线路板右下角的系统状态选择开关拨至86档,开启实验系统。
c.在系统软件所在目录下键入MD86↙,选择对应串口号,进入集成操作软件环境,出现系统提示符“>”。
按下F1功能键,进入全屏幕编辑界面,按ALT+F建立新文件(NEW),即可开始输入源程序。
实验程序及流程如下:STACK SEGMENT STACK ;8088宏汇编程序DW 64 DUP() ;定义堆栈段STACK ENDSCODE SEGMENT ;定义代码段ASSUME CS:CODESTART: MOV DI,3500H ;程序开始设数据区首址MOV CX,0010H ;字节数送入CX中MOV AX,0000HSAHFA1: MOV [DI],AL ;写入一字节INC DI ;修改地址指针INC AX ;修改数据DAA ;十进制调整LOOP A1 ;未填完转移A2: JMP A2CODE ENDS ;代码段结束END START ;程序段结束d.输入程序后,按F2保存程序(规定扩展名为*.asm),使用ALT+X返回集成软件环境。
e.按F2,输入源程序名↙(省略扩展名,系统默认为.asm),对源程序进行汇编,生成目标文件(*.obj)及错误信息文件(*.m)。
若给出LST文件名则生成相应*.lst文件。
f.汇编无误后,按F3输入文件名↙对汇编生成的*.obj文件进行连接,连接信息显示于屏幕上,生成相应*.exe可执行文件。
g.按F5,输入*.exe可执行文件名↙,填入程序段地址CS:0000↙及偏移地址IP:2000↙,PC开始将程序从磁盘装入到教学系统内存,提示装载完毕后使用U0000:2000↙命h.当发现源程序输入错误或需要调整时,在调试界面下可用A命令来修改,如修改2000句为(2)运行程序系统提供了单步运行、设断点运行、连续运行等方式,具体操作如下:a.单步运行:其操作如下表,每运行一条指令后会显示下一条待执行指令并以蓝底白字显示变化寄存器的内容,重复T↙(或按F4键)就可一步一步地运行,直至程序结束。
ascii编码和十进制对应关系

ASCII编码和十进制对应关系
ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是计算机科学中常用的一种字符编码标准。
它使用7位或8位二进制数来表示各种字符,包括英文字母、数字、标点符号和控制字符等。
这种编码方式使得计算机可以处理和存储文本信息。
ASCII编码与十进制数之间有着直接的对应关系。
因为二进制数可以转化为十进制数,这使得ASCII编码的每个字符都对应一个具体的十进制数值。
这种对应关系的理解是掌握ASCII编码的基础。
以下是一些ASCII编码与十进制数的对应关系的例子:
* 大写字母A的ASCII编码是65。
这意味着如果你将大写字母A转化为ASCII编码,你将得到一个二进制数,这个二进制数对应的十进制数就是65。
* 小写字母a的ASCII编码是97。
同样地,小写字母a对应的二进制ASCII 编码转化为十进制数就是97。
* 数字0的ASCII编码是48,数字1的ASCII编码是49,以此类推,数字9的ASCII编码是57。
这些对应关系在编程、数据处理和网络通信等领域中都有广泛的应用。
例如,当你使用计算机编程时,你可能需要将字符转化为其对应的ASCII编码以进行处理。
同样,当计算机接收或发送数据时,它可能会使用ASCII编码来表示文本信息。
总的来说,ASCII编码和十进制数的对应关系是计算机科学中的一个基本概念,对于理解计算机如何处理文本信息至关重要。
Wmd86实验指导书(简)

电子音响
扬声器
1
8237
1
单次脉冲
微动开关
2
8251
1
逻辑开关
拨动开关
16
DAC0832
1
显示灯
LED
16
ADC0809
1
驱动接口
ULN2803
1
74LS245
6
步进电机(选)
35BYJ46型
1
74LS573
1
直流电机
DC12V,1.1W
1
控制存储器
62256SRAM
2
串行口
DB9插座
1
FLASH
其中,编译工具栏图标含义如下:
为编译按钮:当实验程序调入或写入程序编辑区时该按钮有效。编译当前实验程序,在源程序所在目录下生成同名的目标文件。
为链接按钮:当实验程序编译完成后有效。在源程序所在目录下生成同名的可执行文件。
为加载按钮:当实验程序链接完成后有效。把链接生成的可执行文件传送到下位机中,即实验系统的存储器中。
系统数据线(输入/输出)
MIR6、MIR7
主8259请求信号(输入)
XA1~XA20
系统地址线(输出)
SIR1
从8259请求信号(输入)
BHE#、BLE#
字节使能信号(输出)
R/W#
读、写信号(输出)
ADS#
地址状态信号(输出)
MRD#、MWR#
存储器读、写信号(输出)
MY0、MY1
存储器待扩展信号(输出)
CODE ENDS
END START
(2)对程序进行编译、链接、加载、执行、断点执行、单步执行等操作。
(3)利用D命令查看程序执行前后存储器单元的内容。并利用E命令修改存储器单元的内容。
汇编语言程序设计(第四版)第4章【课后答案】

汇编语言程序设计(第四版)第4章【课后答案】汇编语言程序设计第四版【课后习题答案】--囮裑為檤第4章基本汇编语言程序设计〔习题4.1〕例题4.2如果要求算术右移8位,如何修改程序。
〔解答〕思路:首先由最高位字节向次低位字节传送……次低位字节向最低位字节传送(共7次);再判最高位字节符号位,如为0,送00h到最高位字节;如为1,送ffh到最高位字节。
传送可参考例题4.2,不过应从第一号字节送第零号字节,……最高位字节向次低位字节传送;也可以用循环来完成:.model small.stack 256.dataqvar dq 1234567887654321h.code.startupmov cx,7mov si,1again: mov al, byte ptr qvar[si]mov byte ptr qvar[si-1],alinc siloop againtest al,80hjz ezzmov bl,0ffhjmp doneezz: mov bl,0done: mov byte ptr qvar[7],bl.exit 0end〔习题4.2〕例题4.2如果要求算术左移7位,如何用移位指令实现。
〔解答〕思路:可设计外循环体为8个字节左移一次,方法是:最低位字节算术左移一次,次低位字节至最高位字节依次带CF 位循环左移一次(内循环共8次),外循环体控制执行7次即可。
.model small.stack 256.dataqvar dq 1234567887654321h.code.startupmov dx, 7 ;外循环次数mov ax, byte ptr qvar[0] ;最低位字节送axlpp: shl ax, 1 ;最低位字节左移一次,其d7移入CF位mov si, 1mov cx, 7 ;内循环次数again: rcl byte ptr qvar[si], 1 ;高位字节依次左移P50inc siloop againdec dxjnz lpp.exit 0.end〔习题4.3〕将AX寄存器中的16位数连续4位分成一组,共4组,然后把这4组数分别放在AL、BL、CL和DL寄存器中。
计算机的组成练习题---精品管理资料

1.1样题解析1。
1。
1单项选择题1.计算机系统中不可缺少的软件是A.CPU B。
操作系统 C。
Office 办公软件D。
网络软件2.在计算机存储器中存储的A。
只是数据 B.只是程序C。
是十进制数据 D.是二进制代码3。
在计算机机中,指挥、协调计算机工作的部件是A.存储器B.控制器C。
运算器D。
寄存器4。
世界上第一台微型计算机延生在A。
1970年B。
1971年C。
1972年 D.1973年5。
将十进制数25转换成对应的二进制数,正确的结果是A。
11001 B。
11010 C。
11011 D。
111106.将二进制数11100转换成对应的十进制数,正确的结果是A.27 B。
28 C。
29 D.307.将二进制数1011011转换成对应的十六进制数,正确的结果是A。
B3 B.5A C。
5B D.5C8。
将十六进制数F1转换成对应的二进制数,正确的结果是A.11110001B.1111001 C。
111101 D。
111119.在下列设备中,既属于输入设备又属于输出设备的是A。
鼠标B。
键盘C。
打印机 D.硬盘10.计算机能够直接执行的程序是A。
汇编语言源程序B。
机器语言源程序C。
C语言源程序D。
Java语言源程序11.在下列软件中,不属于系统软件的是A。
编译程序 B.操作系统 C.数据库管理系统D。
C语言源程序12。
计算机中存储容量的基本单位是A.位B。
字节 C.字 D.字符串13.计算机系统中的存储器系统一般是指A.ROM和RAM B。
主存储器 C.硬盘和软盘 D.主存储器和辅助存储器14。
下列不能用于连接硬盘的接口是A。
IDE B.SCSI C.SATA D.PCI15.在下列设备中,有可能是计算机病毒传染渠道的是A.键盘B。
鼠标C。
扫描仪D。
移动硬盘1。
1.2双项选择题1。
计算机之所以采用二进制主要是因为A.二进制的运算法则简单B。
耗电量低 C.二进制的运算精度高D。
二进制表标的数据范围大 E.硬件容易实现2。
最全ASCII对应码表-键值

OCT(八进制)最全ASCII码对应表—与键盘按键对应值(二进)Bin (十进)Dec (十六进)Hex 缩写/字符解释0000 0000 0 00 NUL (null) 空字符0000 0001 1 01 SOH (start of handing) 标题开始0000 0010 2 02 STX (start of text) 正文开始0000 0011 3 03 ETX (end of text) 正文结束0000 0100 4 04 EOT (end of transmission) 传输结束0000 0101 5 05 ENQ (enquiry) 请求0000 0110 6 06 ACK (acknowledge) 收到通知0000 0111 7 07 BEL (bell) 响铃0000 1000 8 08 BS (backspace) 退格0000 1001 9 09 HT (horizontal tab) 水平制表符0000 1010 10 0A LF (NL line feed, new line) 换行键0000 1011 11 0B VT (vertical tab) 垂直制表符0000 1100 12 0C FF (NP form feed, new page) 换页键0000 1101 13 0D CR (carriage return) 回车键0000 1110 14 0E SO (shift out) 不用切换0000 1111 15 0F SI (shift in) 启用切换0001 0000 16 10 DLE (data link escape) 数据链路转义0001 0001 17 11 DC1 (device control 1) 设备控制1 0001 0010 18 12 DC2 (device control 2) 设备控制20001 0011 19 13 DC3 (device control 3) 设备控制3 0001 0100 20 14 DC4 (device control 4) 设备控制4 0001 0101 21 15 NAK (negative acknowledge) 拒绝接收0001 0110 22 16 SYN (synchronous idle) 同步空闲0001 0111 23 17 ETB (end of trans. block) 传输块结束0001 1000 24 18 CAN (cancel) 取消0001 1001 25 19 EM (end of medium) 介质中断0001 1010 26 1A SUB (substitute) 替补0001 1011 27 1B ESC (escape) 溢出0001 1100 28 1C FS (file separator) 文件分割符0001 1101 29 1D GS (group separator) 分组符0001 1110 30 1E RS (record separator) 记录分离符0001 1111 31 1F US (unit separator) 单元分隔符0010 0000 32 20 空格0010 0001 33 21 !0010 0010 34 22 "0010 0011 35 23 #0010 0100 36 24 $0010 0101 37 25 %0010 0110 38 26 &0010 0111 39 27 '0010 1000 40 28 (0010 1010 42 2A * 0010 1011 43 2B + 0010 1100 44 2C , 0010 1101 45 2D - 0010 1110 46 2E . 0010 1111 47 2F / 0011 0000 48 30 0 0011 0001 49 31 1 0011 0010 50 32 2 0011 0011 51 33 3 0011 0100 52 34 4 0011 0101 53 35 5 0011 0110 54 36 6 0011 0111 55 37 7 0011 1000 56 38 8 0011 1001 57 39 9 0011 1010 58 3A : 0011 1011 59 3B ; 0011 1100 60 3C < 0011 1101 61 3D = 0011 1110 62 3E >0100 0000 64 40 @0100 0001 65 41 A 0100 0010 66 42 B 0100 0011 67 43 C 0100 0100 68 44 D 0100 0101 69 45 E 0100 0110 70 46 F 0100 0111 71 47 G 0100 1000 72 48 H 0100 1001 73 49 I 0100 1010 74 4A J 0100 1011 75 4B K 0100 1100 76 4C L 0100 1101 77 4D M 0100 1110 78 4E N 0100 1111 79 4F O 0101 0000 80 50 P 0101 0001 81 51 Q 0101 0010 82 52 R 0101 0011 83 53 S0101 0101 85 55 U 0101 0110 86 56 V 0101 0111 87 57 W 0101 1000 88 58 X 0101 1001 89 59 Y 0101 1010 90 5A Z 0101 1011 91 5B [ 0101 1100 92 5C \ 0101 1101 93 5D ] 0101 1110 94 5E ^ 0101 1111 95 5F _ 0110 0000 96 60 ` 0110 0001 97 61 a 0110 0010 98 62 b 0110 0011 99 63 c 0110 0100 100 64 d 0110 0101 101 65 e 0110 0110 102 66 f 0110 0111 103 67 g 0110 1000 104 68 h 0110 1001 105 69 i0110 1011 107 6B k 0110 1100 108 6C l 0110 1101 109 6D m 0110 1110 110 6E n 0110 1111 111 6F o 0111 0000 112 70 p 0111 0001 113 71 q 0111 0010 114 72 r 0111 0011 115 73 s 0111 0100 116 74 t 0111 0101 117 75 u 0111 0110 118 76 v 0111 0111 119 77 w 0111 1000 120 78 x 0111 1001 121 79 y 0111 1010 122 7A z 0111 1011 123 7B { 0111 1100 124 7C | 0111 1101 125 7D } 0111 1110 126 7E ~0111 1111 127 7F DEL (delete) 删除键盘常用ASCII码(十进制表示值)ESC键VK_ESCAPE (27)回车键:VK_RETURN (13)TAB键:VK_TAB (9)Caps Lock键:VK_CAPITAL (20)Shift键:VK_SHIFT (16)Ctrl键:VK_CONTROL (17)Alt键:VK_MENU (18)空格键:VK_SPACE (/32)退格键:VK_BACK (8)左徽标键:VK_LWIN (91)右徽标键:VK_LWIN (92)鼠标右键快捷键:VK_APPS (93)Insert键:VK_INSERT (45)Home键:VK_HOME (36)Page Up:VK_PRIOR (33)PageDown:VK_NEXT (34)End键:VK_END (35)Delete键:VK_DELETE (46)方向键(←):VK_LEFT (37)方向键(↑):VK_UP (38)方向键(→):VK_RIGHT (39)方向键(↓):VK_DOWN (40)F1键:VK_F1 (112)F2键:VK_F2 (113)F3键:VK_F3 (114)F4键:VK_F4 (115)F5键:VK_F5 (116)F6键:VK_F6 (117)F7键:VK_F7 (118)F8键:VK_F8 (119)F9键:VK_F9 (120)F10键:VK_F10 (121)F11键:VK_F11 (122)F12键:VK_F12 (123)Num Lock键:VK_NUMLOCK (144) 小键盘0:VK_NUMPAD0 (96) 小键盘1:VK_NUMPAD0 (97) 小键盘2:VK_NUMPAD0 (98) 小键盘3:VK_NUMPAD0 (99) 小键盘4:VK_NUMPAD0 (100) 小键盘5:VK_NUMPAD0 (101) 小键盘6:VK_NUMPAD0 (102) 小键盘7:VK_NUMPAD0 (103) 小键盘8:VK_NUMPAD0 (104) 小键盘9:VK_NUMPAD0 (105) 小键盘.:VK_DECIMAL (110) 小键盘*:VK_MULTIPLY (106) 小键盘+:VK_MULTIPLY (107) 小键盘-:VK_SUBTRACT (109) 小键盘/:VK_DIVIDE (111) Pause Break键:VK_PAUSE (19) Scroll Lock键:VK_SCROLL (145)常见ASCII码的大小规则:0~9<A~Z<a~z1)数字比字母要小。
将ASCII码表示的十进制数转换为二进制数

一、实验内容:实验1:将ASCII码表示的十进制数转换为二进制数二、实验步骤:1、从键盘输入五位的十进制数,保存在地址为3500H的存储单元2、把这个十进制数转换为十六进制数,所得结果保存在地址为3510H的存储单元中3、把这个十六进制的结果的每位取出来,转换为ACSII码值,存储在地址为3514H的存储单元中4、把以3514H为起始地址的字符串输出到屏幕,即可得到5位十进制数转换为二进制数的结果三、程序代码:DATA SEGMENTORG 34FEHBUF DB 10DB?DB 10 DUP(?)ORG 3510HBBF DB 20 DUP(?),0DH,0AH,'$'IBF DB'Please input one number:',0DH,0AH,'$'ICF DB 0DH,0AH,'The result is:',0DH,0AH,'$'DATA ENDSSTACK SEGMENT STACK 'STACK'STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,DATAMOV DS,AXMOV DX,OFFSET IBFMOV AH,9INT 21HMOV DX,0MOV AH,0AHLEA DX,BUFINT 21HMOV SI,3500HMOV DX,0MOV CX,04HMOV BX,000AHMOV AH,00HCIRCLE:MOV AL,[SI]SUB AL,30HADD AX,DXMUL BXMOV DX,AXINC SIMOV AH,0LOOP CIRCLEMOV AL,[SI]SUB AL,30HADD AX,DXLEA SI,BBFMOV [SI],AXMOV DX,AXMOV CH,04HMOV CL,04HMOV BX,3514HNEXT:ROL AX,CLMOV DL,ALAND DL,0FHCMP DL,09HJBE PLADD DL,07HPL: ADD DL,30HMOV [BX],DLINC BXDEC CHJNZ NEXTMOV DX,OFFSET ICFMOV AH,9INT 21HMOV AH,09HMOV DX,3514HINT 21HMOV AH,4CHINT 21HCODE ENDSEND START四、代码运算过程:实验2:将从键盘输入的五位十进制数的ASCII码已存在3500起始的内存单元中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、实验内容:
实验1:将ASCII码表示的十进制数转换为二进制数
二、实验步骤:
1、从键盘输入五位的十进制数,保存在地址为3500H的存储单元
2、把这个十进制数转换为十六进制数,所得结果保存在地址为3510H的存储
单元中
3、把这个十六进制的结果的每位取出来,转换为ACSII码值,存储在地址为
3514H的存储单元中
4、把以3514H为起始地址的字符串输出到屏幕,即可得到5位十进制数转换
为二进制数的结果
三、程序代码:
DATA SEGMENT
ORG 34FEH
BUF DB 10
DB?
DB 10 DUP(?)
ORG 3510H
BBF DB 20 DUP(?),0DH,0AH,'$'
IBF DB'Please input one number:',0DH,0AH,'$'
ICF DB 0DH,0AH,'The result is:',0DH,0AH,'$'
DATA ENDS
STACK SEGMENT STACK 'STACK'
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START:MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET IBF
MOV AH,9
INT 21H
MOV DX,0
MOV AH,0AH
LEA DX,BUF
INT 21H
MOV SI,3500H
MOV DX,0
MOV CX,04H
MOV BX,000AH
MOV AH,00H
CIRCLE:MOV AL,[SI]
SUB AL,30H
ADD AX,DX
MUL BX
MOV DX,AX
INC SI
MOV AH,0
LOOP CIRCLE
MOV AL,[SI]
SUB AL,30H
ADD AX,DX
LEA SI,BBF
MOV [SI],AX
MOV DX,AX
MOV CH,04H
MOV CL,04H
MOV BX,3514H
NEXT:ROL AX,CL
MOV DL,AL
AND DL,0FH
CMP DL,09H
JBE PL
ADD DL,07H
PL: ADD DL,30H
MOV [BX],DL
INC BX
DEC CH
JNZ NEXT
MOV DX,OFFSET ICF
MOV AH,9
INT 21H
MOV AH,09H
MOV DX,3514H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
四、代码运算过程:
实验2:将从键盘输入的五位十进制数的ASCII码已存在3500起始的内存单元中。
把它转换成BCD码后,再按位分别存入350A起始的内存单元内。
若输入的不是十进制的ASCII码,则显示FF.
代码如下:
START: MOV AX,DATA
MOV DS,AX
LEA SI,BUF
MOV CX,05H
MOV AH,00H
LEA DI,BBF
CIRCLE: MOV AL,[SI]
CMP AL,30H
JB NEXT
CMP AL,39H
JA NEXT
SUB AL,30H
INT 21H
INC DI
INC SI
LOOP CIRCLE
LYX: MOV [DI],AL
MOV AH,4CH
NEXT: MOV AL,0FFH
JMP LYX
程序运行:
实验3:将十六位二进制数转换为ASCII码表示的十进制数。
十六进制数的值域为0~65535,最大可转换为五位十进制数。
代码如下:
START:MOV AX,DATA
MOV DS,AX
LEA SI,BUF
MOV CH,05H
MOV AH,00H
LEA DI,BBF
ADD DI,04H
MOV BX,000AH
MOV CL,04H
MOV AX,[SI] CIRCLE: CWD
MOV DX,0
IDIV BX
ADD DL,30H
MOV [DI],DL
DEC DI
DEC CH
MOV DX,0
JNZ CIRCLE
MOV AH,4CH
INT 21H
程序运行:。