汇编程序设计

发布时间:2023-11-02
这里仅讨论简单的程序设计。简单程序设计是没有分支,没有循环的直线运行程序,程序执行按照ip内容自动增加的顺序进行。 【例1】 利用查表法计算平方值。已知0 ~ 9的平方值连续存在以sqtab开始的存储区域中,求sur单元内容x的平方值,并放在dis单元中。假定0≤x≤ 9且为整数。
分析:建立平方表,通过查表完成。
stack segment
db 100 dup(?)
stackends
data segment
sur db?
dis db ?
sqtabdb0,1,4,9,16,25,36,49,64,81; 0~9的平方表
data ends
code segment
assume cs:code,ds:data,ss:stack,es:data
begin:push ds
mov ax,0
push ax;保证返回dos,
mov ax,data
mov ds,ax;为ds送初值
lea bx,sqtab ;以下程序部分完成查表求平方值
mov ah,0;亦可用查表指令完成(如下程序段)
mov al,sur ;al=xleabx, sqtab
add bx,ax; moval, sur
mov al,[bx] ; xlat
mov dis,al; movdis, al
code ends
end begin
【例2】已知z=(x+y)-(w+z),其中x,y,z,w均为用压缩bcd码表示的数,写出程序。
分析:这也是一种典型的直线程序,在这里要注意是bcd数相加,要进行十进制调整。具体程序如下:
mov al,z
mov bl,w
add al,bl
daa
mov bl,al ;bl=(w+z)
mov al,x
mov dl,y
add al,dl ;al=(x+y)
daa ;十进制调整
subal,bl ;al=(x+y)-(z+w)
das ;十进制调整
mov z,al;结果送z
上一个:windows11内存完整性(windows10内存)
下一个:苹果手机怎么换机到另一个苹果手机,卡是插新手机吗(苹果手机怎么换机到另一个苹果手机应该下什么软件)

怎样设置手机qq自动回复功能(怎样设置手机qq自动回复信息)
网上注册域名多少钱 如何起好的域名
砌体结构设计应重点注意那些问题?
板粟冬季修剪技术
传感器输出阻抗分类有哪些?
久保田161挖掘机新车多少钱,6000小时的久保田KX161挖掘机还值多少钱
win7怎么释放电脑c盘空间,怎么释放电脑C盘
如何种植芍药?
RC0805FR-07620KL,0805 620KΩ 1% 1/8W 电阻
sonos音箱使用方法(sonos音箱音质怎么样)