关于汇编语言PSP的知识有哪些?提问:产生随机数并运算的汇编程序(真正可以运行成功的)

2026-01-03 08:30:01 0

关于汇编语言PSP的知识有哪些?提问:产生随机数并运算的汇编程序(真正可以运行成功的)

这篇文章给大家聊聊关于真正的汇编,以及关于汇编语言PSP的知识有哪些对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

本文目录

关于汇编语言PSP的知识有哪些

1:总的来说就是执行程序的各种方法成为psp。

2:PSP是256个字节,当程度生成了可执行文件以后,在执行的时候,先将程序调入内存,这个时候DS中存入程序在内存中的段地址,比如说程序占用多大空间等等,这就是PSP。

3:一般PSP占256个字节,然后才是真正的程序地址,将CS指向这里,为什么一般CS要比DS大10H,就是因为这个原因。

4:DS存放的是程序段地址,真正要执行的地址是DS再加上256个字节,真正的地址是化简一下,真正的地址又可以写成化成十六制。

5:段前缀是操作系统在执行程序时为程序所建立的一个信息块,   里面包括了传递给待运行程序的命令行参数,   程序运行结束时返回DOS所需的地址等有用的信息。

6:COM格式比较特殊,数据段,堆栈段集中在一个段里,连PSP也集中在这个段里,   EXE文件在运行时DS/ES的初值设为PSP的段地址,可以直接用偏移0-100H访问PSP的内容。

提问:产生随机数并运算的汇编程序(真正可以运行成功的)

DATA SEGMENT
CC DB ’+’
ww db ’-’
GG DB ’=’
II DB 0DH,0AH,’$’
AA DB 5 DUP(?)
www dw 0
ghh db ’0’,0dh,0ah,’$’
bnm dw 0
DATA ENDS
STACK SEGMENT
DB 200 DUP(0)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AX,DATA
MOV DS,AX
MOV CX,20
CALL RAND ;产生一随机数
CALL MCAT ;将随机数转换为16进制表示的ASCII码字符
MOV AX,BX
PUSH AX
CMP www,0 ;WWW=0?
JE A1 ;执行’+’
CMP www,1 ;www=1?
JE A2 ;执行’-’
A1: MOV DL,CC ;显示’+’
MOV AH,2
INT 21H
CALL RAND ;产生另一随机数
add bx,0fh
CALL MCAT ;将随机数转换为16进制表示的ASCII码字符
MOV DL,GG ;显示’=’
MOV AH,2
INT 21H
POP AX
ADD AX,BX
cmp ax,0
jne yjw1
lea dx,ghh
mov ah,9
int 21h
jmp qq1
yjw1: JMP B1
A2: MOV DL,WW ;显示’-’
MOV AH,2
INT 21H
mov cx,65535
mai1: loop mai1
CALL RAND1
CALL MCAT
MOV DL,GG
MOV AH,2
INT 21H
POP AX
Sbb AX,BX
cmp ax,0
jne yjw2
lea dx,ghh
mov ah,9
int 21h
jmp qq1
yjw2: JMP B1
B1: MOV BX,AX
CALL MCAT
lea DX,II
MOV AH,9
INT 21H
QQ1: MOV AH,4CH
INT 21H
MCAT PROC ;将随机数转换为16进制表示的ASCII码字符子程序
PUSH AX
push bx
PUSH CX
PUSH DX
CMP BX,9
JA S1
PUSH AX
PUSH BX
PUSH CX
PUSH DX
mov ax,bx
mov bl,5
div bl
cmp ah,3
jae vb1
mov www,1
jmp vn1
vb1:mov www,0
vn1:pop dx
pop cx
pop bx
pop ax
ADD BL,30H
MOV AA,BL
MOV AA+1,’$’
LEA DX,AA
MOV AH,9
INT 21H
JMP s3
s1:MOV CL,4
MOV AL,0
PUSH BX
SHL BX,CL
CMP BH,9
JBE V1
SUB BH,9
ADD BH,40H
JMP MM1
V1:ADD BH,30H
MM1:MOV AA,BH
POP BX
AND BL,0FH
PUSH AX
PUSH BX
PUSH CX
PUSH DX
mov ax,bx
mov bl,5
div bl
cmp ah,3
jae vb2
mov www,1
jmp vn2
vb2:mov www,0
vn2:pop dx
pop cx
pop bx
pop ax
CMP BL,9
JBE TT1
SUB BL,9
ADD BL,40H
JMP RR1
TT1: ADD BL,30H
RR1: MOV AA+1,BL
MOV AA+2,’$’
LEA DX,AA
MOV AH,9
INT 21H
s3:POP DX
POP CX
POP BX
POP AX
RET
MCAT ENDP
RAND PROC
PUSH CX
PUSH DX
PUSH AX
STI
MOV AH,0 ;读时钟计数器值
INT 1AH
MOV AX,DX ;清高6位
AND AH,3
MOV DL,101 ;除101,产生0~100余数
DIV DL
MOV BL,AH ;余数存BX,作随机数
POP AX
POP DX
POP CX
RET
RAND ENDP
RAND1 PROC
PUSH CX
PUSH DX
PUSH AX
STI
MOV AH,0
INT 1AH
MOV ax,cx
AND AH,3
MOV DL,101
DIV DL
MOV BL,AH
POP AX
POP DX
POP CX
RET
RAND1 ENDP
CODE ENDS
END START

汇编有什么用

1.汇编语言 汇编语言是最接近于机器语言的编程语言。如果说机器语言是计算机操作的本质那么汇编语言就是最最接近本质的语言。汇编语言操作直接面向硬件。所以我们在使用汇编语言的时候,我们能够感知计算机的运行过程和原理,从而能够对计算机硬件和应用程序之间的联系和交互形成一个清晰的认识。这也是最能够锻炼编程者编程思维逻辑的,只有这样,学习者才能形成一个软、硬兼备的编程知识体系,这是任何高级语言都无法给予的,相对于繁复的高级语言,汇编语言指令集合更简约,指令操作更直接,从汇编开始学习更符合循序渐进的学习原理。所以,对于计算机技术初学者或者自学者,汇编语言重要性无可替代
2.汇编语言之于高级语言,不否认在应用层面高级语言占据了软件开发市场的绝大部分。也正是这种现象误导了学习者甚者是教育者,所以目前高校计算机专业的现状是,专业课程中C语言、C++、Java等高级语言一应俱全而毕业的学生却连简单的程序都不能编写。为什么?听不懂、学不会。这就是缺乏基础造成的。汇编语言才是计算机技术的基础,而不是常说的C语言。之所以说汇编重要,其一个重要的原因就是,汇编语言能够让你更好的理解高级语言,尤其是高级语言中的C语言。汇编语言对于内存的操作都是基于内存地址的,而C语言中最令人头疼的指针概念,说白了就是内存的地址。指针的学习和应用中最头疼的就是在指针这个抽象的概念和实际的内存单元之间建立思维映射,而这些恰恰是我们在汇编语言学习中频繁做的一件平常事。另外,对于C语言中的数据类型、形参实参、函数调用、全局变量、局部变量等概念及操作,我们都可以用汇编语言中的一些操作相关联把这些抽象的概念和过程通过汇编语言形成一个具体的映像,深度剖析这样我们才能真正的学会、学好C语言。
有了汇编和C的基础,那些所谓的面向对象的语言学习起来就更为顺畅了,奉劝那些好高骛远的学习者,踏踏实实的从汇编开始吧。古云:磨刀不误砍柴工啊!
3.汇编语言之于应用 很多学习者放弃对于汇编语言的学习,是因为高级语言的开发更容易找到工作。这个理由也是我见到过的最现实的。但是,这里面明显存在着认识误区。首先,我们的学习是一个系统过程,我们的知识结构不是一个单一课程所能够建立的。所以,学习汇编的目的并不是非要用汇编去挣饭钱。因为汇编语言对于一个编程人员所应该具备的基本素质的培养和形成得意义是非常重大的,这在前文中已经分析了,不再赘述;其次,汇编本身也是很重要的应用技术。由于学习者,尤其是在校的学生,平时接触的最多的是纯软件的东西。所以,觉得五花八门的软件才是计算机技术应用的舞台。那么这些人最终会成为那位博主提到的那些工作后才意识到汇编的作用的“师兄”。汇编的操作由于跟硬件紧密相关。所以,很多硬件设施的嵌入式编程使用的都是使用的汇编语言,因为汇编语言更直接、更有效率。我们现在的数码产品很多,而这些数码产品赖以生存的芯片、主板等。都包含了嵌入式程序,而这些程序中。汇编语言的使用是相当重要的。

汇编好象有多种,目前最常用的什么汇编

每一类CPU其汇编都不一样,目前常用的汇编有:
1、x86汇编
2、51汇编
3、AVR汇编
4、PIC汇编
5、ARM汇编
6、DSP汇编
7、.............等等

关于真正的汇编,关于汇编语言PSP的知识有哪些的介绍到此结束,希望对大家有所帮助。

关于汇编语言PSP的知识有哪些?提问:产生随机数并运算的汇编程序(真正可以运行成功的)

本文编辑:admin

更多文章:


舞台灯光编程软件(灯光编程师跟灯光师的区别)

舞台灯光编程软件(灯光编程师跟灯光师的区别)

各位老铁们,大家好,今天由我来为大家分享舞台灯光编程软件,以及灯光编程师跟灯光师的区别的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录灯光编程师跟灯

2025年11月11日 11:45

织梦纯电脑模板(织梦cms模版模块怎么用)

织梦纯电脑模板(织梦cms模版模块怎么用)

本篇文章给大家谈谈织梦纯电脑模板,以及织梦cms模版模块怎么用对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录织梦cms模版模块怎么用谁可以

2025年9月19日 04:30

metro翻译(subway和metro有什么区别)

metro翻译(subway和metro有什么区别)

各位老铁们,大家好,今天由我来为大家分享metro翻译,以及subway和metro有什么区别的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录sub

2026年8月8日 12:00

directive vue(如何在Vue中建立全局引用或者全局命令)

directive vue(如何在Vue中建立全局引用或者全局命令)

大家好,关于directive vue很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于如何在Vue中建立全局引用或者全局命令的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各

2026年5月6日 19:15

javaeclipse包的新建(用eclipse如何创建java工程)

javaeclipse包的新建(用eclipse如何创建java工程)

各位老铁们好,相信很多人对javaeclipse包的新建都不是特别的了解,因此呢,今天就来为大家分享下关于javaeclipse包的新建以及用eclipse如何创建java工程的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看

2026年1月11日 08:30

单元测试通常应该先进行人工走查(软件测试需要经过哪些步骤)

单元测试通常应该先进行人工走查(软件测试需要经过哪些步骤)

本篇文章给大家谈谈单元测试通常应该先进行人工走查,以及软件测试需要经过哪些步骤对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录软件测试需要经

2025年12月24日 08:15

fscanf读出文件的变量(C语言从文件中读取数据的问题)

fscanf读出文件的变量(C语言从文件中读取数据的问题)

大家好,fscanf读出文件的变量相信很多的网友都不是很明白,包括C语言从文件中读取数据的问题也是一样,不过没有关系,接下来就来为大家分享关于fscanf读出文件的变量和C语言从文件中读取数据的问题的一些知识点,大家可以关注收藏,免得下次来

2026年7月2日 14:00

c语言switch语句case后面接什么(c语言switch语句中case后面必须要接整型常量和字符型常量吗)

c语言switch语句case后面接什么(c语言switch语句中case后面必须要接整型常量和字符型常量吗)

各位老铁们,大家好,今天由我来为大家分享c语言switch语句case后面接什么,以及c语言switch语句中case后面必须要接整型常量和字符型常量吗的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我

2025年10月26日 08:15

商海通牒背景(有哪些关于金融的美剧电影值得推荐)

商海通牒背景(有哪些关于金融的美剧电影值得推荐)

“商海通牒背景”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看商海通牒背景(有哪些关于金融的美剧电影值得推荐)!本文目录有哪些关于金融的美剧电影值得推荐求知哪部电视剧及电影中情节涉及投资银行业务有哪些关于金融的美剧电影值得推

2025年10月22日 05:00

怎么把普通文件导入变成web项目(java项目怎么转成web项目)

怎么把普通文件导入变成web项目(java项目怎么转成web项目)

这篇文章给大家聊聊关于怎么把普通文件导入变成web项目,以及java项目怎么转成web项目对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录java项目怎么转成web项目javaweb怎么把zip导入项目eclipse如何把ja

2025年9月18日 16:00

在循环体内使用break语句(在循环结构中使用break语句,退出的是一层循环,还是多重循环呢可以给出一个简单且巧妙的例子吗)

在循环体内使用break语句(在循环结构中使用break语句,退出的是一层循环,还是多重循环呢可以给出一个简单且巧妙的例子吗)

各位老铁们,大家好,今天由我来为大家分享在循环体内使用break语句,以及在循环结构中使用break语句,退出的是一层循环,还是多重循环呢可以给出一个简单且巧妙的例子吗的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本

2026年5月1日 00:00

foreign born(bornfor是什么意思)

foreign born(bornfor是什么意思)

本篇文章给大家谈谈foreign born,以及bornfor是什么意思对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录bornfor是什么意思The importance of oral EnglishForeign-bor

2025年12月18日 14:30

resumes翻译(“品质履历“的英文怎么翻译)

resumes翻译(“品质履历“的英文怎么翻译)

这篇文章给大家聊聊关于resumes翻译,以及“品质履历“的英文怎么翻译对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录“品质履历“的英文怎么翻译复原英语怎么说pesume的翻译是:什么意思请英文高手帮助翻译resume中文翻

2025年10月23日 04:30

position在css的属性(CSS中position属性详解)

position在css的属性(CSS中position属性详解)

本篇文章给大家谈谈position在css的属性,以及CSS中position属性详解对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录CSS中position属性详解CSS中position是什么属性,有那些属性值CSS中po

2025年9月26日 23:45

工业帮plc培训坑人(技成培训怎么样工业帮怎么样前桥呢)

工业帮plc培训坑人(技成培训怎么样工业帮怎么样前桥呢)

大家好,工业帮plc培训坑人相信很多的网友都不是很明白,包括技成培训怎么样工业帮怎么样前桥呢也是一样,不过没有关系,接下来就来为大家分享关于工业帮plc培训坑人和技成培训怎么样工业帮怎么样前桥呢的一些知识点,大家可以关注收藏,免得下次来找不

2025年11月21日 07:45

amazed是什么牌子(amazing和amazed有什么区别)

amazed是什么牌子(amazing和amazed有什么区别)

本篇文章给大家谈谈amazed是什么牌子,以及amazing和amazed有什么区别对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录amazing和amazed有什么区别surprised,excited,amazed有什么

2026年4月3日 15:00

周期函数值域的求法(已知函数的最小正周期为求;当时,求函数的值域.)

周期函数值域的求法(已知函数的最小正周期为求;当时,求函数的值域.)

大家好,如果您还对周期函数值域的求法不太了解,没有关系,今天就由本站为大家分享周期函数值域的求法的知识,包括已知函数的最小正周期为求;当时,求函数的值域.的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录已知函数的最

2025年11月30日 22:15

毕设做网站必须要用到ssm框架嘛(毕业设计做ssm还是app更难)

毕设做网站必须要用到ssm框架嘛(毕业设计做ssm还是app更难)

本篇文章给大家谈谈毕设做网站必须要用到ssm框架嘛,以及毕业设计做ssm还是app更难对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录毕业设

2026年3月31日 03:00

new directory(如何将威纶通tk6070ip触摸屏程序上传到电脑里)

new directory(如何将威纶通tk6070ip触摸屏程序上传到电脑里)

大家好,今天小编来为大家解答以下的问题,关于new directory,如何将威纶通tk6070ip触摸屏程序上传到电脑里这个很多人还不知道,现在让我们一起来看看吧!本文目录如何将威纶通tk6070ip触摸屏程序上传到电脑里Git命令错误:

2026年8月7日 01:45

逗号运算符有什么意义(C语言中的逗号有什么意义)

逗号运算符有什么意义(C语言中的逗号有什么意义)

其实逗号运算符有什么意义的问题并不复杂,但是又很多的朋友都不太了解C语言中的逗号有什么意义,因此呢,今天小编就来为大家分享逗号运算符有什么意义的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录C语言中的逗号有什么意

2026年4月3日 01:45

近期文章

本站热文

electronics软件(labcenter electronics是什么软件)
2025-05-22 23:45:02 浏览:134
博客是微博吗(博客是微博吗)
2025-05-22 22:45:01 浏览:111
diversity and distribution(悬赏英语短文)
2025-05-23 16:15:02 浏览:107
ios软件开发前景(iOS就业前景怎么样)
2025-05-22 23:00:01 浏览:102
next month(有The next month这个单词吗,和 next month有什么区别)
2025-05-23 02:30:01 浏览:102
patron(patron是什么意思)
2025-05-23 10:30:02 浏览:95
标签列表

热门搜索