前言
作为一名在校大学生,我将近期所学的知识进行总结。
一年之后我再看这些代码,我发现这些代码对于初学者十分友好。因此,我将这些代码分享给大家,希望大家能有所收获。如有不足,欢迎交流。
推荐可以看这位B站up主的视频学习汇编
提示:以下是本篇文章正文内容,下面案例可供参考
一、拆字程序
题目要求
例如:单元data的内容为27H,将其高、低两位拆出后,分别存放到dataH和dataL中。编写程序,执行后,dataL 的内容应为低位07H,dataH的内容应为高位02H。
程序代码和运行结果
1.1代码如下(示例):
; multi-segment executable file template.
data segment
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
var DB 27H
varL DB 00H
varH DB 00H
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ends
code segment
start:
; set segment registers:
mov ax, data
mov ds, ax
mov es, ax
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
MOV AL,var ;取变量的低4位
AND AL,0FH
MOV varL,AL
MOV AH,var ;取变量的高四位
AND AH,0F0H ;不能以字母直接开头,要加0
SHR AH,4 ;右移四位,不然 varH 就变成02H
MOV varH,AH
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;