
微机汇编语言
单片机学习之路
日常随笔
展开
-
【微机汇编语言学习笔记(六)】 ASCII码表示的十进制转换为二进制
十进制数转换为二进制数的方法:从十进制数的最高位Dn开始作乘10加次位的操作,将结果乘以10再加下一个次位数,如此重复便可求出二进制数的结果。汇编语言实现ASCII码表示的十进制转换为二进制;功能描述:将ASCII码表示的十进制转化为二进制sstack segment stack dw 64 dup(?)sstack endsdata segment sadd db 30h,30h,32h,35h,36h ;十进制:00256data endscode s原创 2021-12-23 17:06:09 · 6675 阅读 · 2 评论 -
【微机汇编语言学习笔记(五)】十六进制转ASCII码
目的:将四位十六进制数203B存放于起始地址为3500H的内存单元中,把它们转换为ASCII码后存入起始地址是350AH的内存单元中。设计思路:十六进制数0H~9H加上30H即可得到相应的ASCII码,AH~FH加上37H即可得到相应的ASCII码。程序sstack segment dw 64 dup(?)sstack ends code segment assume cs:codestart: mov cx,0004h ;四位十六进制数所以要转换原创 2021-12-22 23:58:15 · 11284 阅读 · 4 评论 -
【微机汇编语言学习笔记(四)】十进制数的ASCII转换为BCD码
目的:从键盘输入五位十进制数的ASCII码,存放与3500H起始的内存单元中,将其转换为BCD码,再分别存入350AH起始的地址单元内。若输入不是十进制的ASCII,则对应存放结果的单元内容为“FF”。设计思路:先对输入的ASCII码大小进行判断,判断其是否是在30H~39H范围内。若不在,则让其输出0FFH;若在该范围内,则将该数进行减30H的操作,所得差值即为该ASCII码对应的BCD码。程序SSTACK SEGMENT STACK DW 64 dup(?)SSTACK ENDS原创 2021-12-22 22:53:08 · 6455 阅读 · 3 评论 -
【微机汇编语言学习笔记(三)】 数据传送
1.目的:设计一数据块间的搬移程序。2.设计思想:程序要求把内存中一数据区(称为源数据块)传送到另一存储区(目的数据块)。源数据块和目的数据块在存储中存在三种情况。①源数据块与目的数据块无重叠,数据的传送从数据块的首地址或末地址开始均可。②源数据块首地址 < 目的块首地址,且两个数据块间有重叠,数据传送从数据块末地址开始传送数据。③源数据块首地址 >目的块首地址,且两个数据块间有重叠,数据传送从数据块首地址开始传送数据。3.程序 ;实验程序:数据传送 sstack .原创 2021-12-22 20:49:16 · 3414 阅读 · 0 评论 -
【微机汇编语言学习笔记(二)】 键盘输入显示(INT 21H功能调用)
1.INT 21H功能使用说明①入口:AH = 01H 功能:键盘输入到AL中并显示在显示屏上②入口:AH = 08H 功能:键盘输入到AL中但不显示在显示屏上③入口:AH = 02H 功能:写DL中饭的数据到显示屏上④入口:AH = 09H,DS:DX = 字符串首地址,字符串以'$'结束 功能:显示字符串,直到遇到'$'结束⑤入口:AH = 0AH,DS:DX = 缓冲区首地址,(DS:DX) = 缓冲区最大字符数 功能:读键盘输入的...原创 2021-12-22 19:28:45 · 14677 阅读 · 2 评论 -
【微机汇编语言学习笔记(一)】DOS功能调用——INT 21H功能调用显示A~Z
1.DOS系统功能调用格式MOV AH,调用号设置入口参数INT 21H2.INT 21H功能使用说明①入口:AH = 00H 或AH = 4CH 功能:程序终止②入口:AH = 02H,DL = 数据 功能:写DL中数据到显示屏3.汇编程序;功能描述:使用INT 21H功能调用实现屏幕显示A~Z共26个字母SSTACK SEGMENT STACK ;堆栈段定义 DW 64 DUP(?) ;预留64个字单元SSTACK EN...原创 2021-12-22 18:14:04 · 3567 阅读 · 0 评论