汇编语言
Polaris_T
失败总是贯穿人生的始终,这就是常态。
展开
-
微原实验三 基本IO口扩展
实验内容本实验要求用74LS244作为输入口,读取开关状态,并将此状态通过74LS273连到发光二极管显示。具体实验内容如下:1.开关Yi为低电平时对应的发光二极管亮,高电平时对应的发光二极管灭。2.当开关Yi全为高电平时,发光二极管Qi从左至右轮流点亮。3.当开关Yi全为低电平时,发光二极管Qi从右至左轮流点亮。4.自主设计控制及显示模式,完成编程调试,演示实验结果。思路1.指定74LS244和74LS273的地址;2.进入循环,从74LS244不断读入16个开关的状态,并根据开关状态进原创 2022-03-26 19:23:33 · 8351 阅读 · 1 评论 -
微原实验二 数码转换
实验内容1. 重复从键盘输入不超过5位的十进制数,按回车键结束输入。2. 将该十进制数转换成十六制数;结果以十六进制数的形式显示在屏幕上。3. 如果输入非数字字符,则报告出错信息,重新输入。4. 键盘输入一字符串,以空格结束,统计其中数字字符的个数,在屏幕显示。5. 输入’Q’或’q’时程序运行结束。流程图实验源码STACK1 SEGMENT DB 128 DUP(0)STACK1 ENDSDATA SEGMENT TISHIINFO DB 'Please input a原创 2022-03-26 19:19:33 · 6019 阅读 · 3 评论 -
微原实验一 汇编语言编程实验
实验内容1. 将指定数据区的字符串数据以ASCII码形式显示在屏幕上,并通过DOS功能调用完成必要提示信息的显示。2. 在屏幕上显示自己的学号姓名信息。3. 循环从键盘读入字符并回显在屏幕上,然后显示出对应字符的ASCII码,直到输入”Q”或“q”时结束。4. 自主设计输入显示信息,完成编程与调试,演示实验结果。流程图实验源码data segment string db 'Name:I❥XDU; ID:190301xxxxx$' tip db 'Input chara原创 2022-03-26 19:14:51 · 9161 阅读 · 1 评论 -
8086CPU寻址方式详解
寻址方式定义寻址方式:求操作数所在地或者所在存储器地址单元的方式。指令中的操作数,大多数都在存储器单元当中,也可以在寄存器里面,也可以是在指令中立即给出的常数。我们把求得它们的方式称为寻址方式。类型寻址方式按求得的操作数的目的不同,可以分为两类:数据用程序要实现转移的地址用如果要实现段内转移,就需要求得段内偏移地址给IP用,如果要实现段间转移,除了偏移地址外,还需要求得目的地的段地址给CS用。要计算的数据的所在存储地址怎么得到,或者转移的地址内容的所在存储地址怎么得到,就需要用以一种寻址原创 2021-09-21 22:45:00 · 5218 阅读 · 0 评论 -
王爽汇编语言 实验13
王爽汇编语言 实验13 解答详见:https://blog.csdn.net/happy_Du/article/details/108286686原创 2021-09-20 10:30:18 · 248 阅读 · 0 评论 -
王爽汇编语言实验16、17
详见以下链接实验16:https://blog.csdn.net/weixin_43569916/article/details/105198267实验17:https://blog.csdn.net/weixin_43569916/article/details/105231573原创 2021-09-20 10:27:38 · 262 阅读 · 0 评论 -
王爽汇编语言 实验15
解:assume cs:codestack segment db 128 dup(0)stack endscode segmentstart: mov ax,stack mov ss,ax mov sp,128 push cs pop ds ;令ds = cs mov ax,0 mov es,ax ;令es = 0 mov si,offset int9 mov di, 204h mov cx,offset int9end - offset int9 cl.原创 2021-09-20 10:25:40 · 1218 阅读 · 0 评论 -
王爽汇编语言 实验14
assume cs:codecode segmentstart: ;年份 mov al,9 out 70h,al in al,71h mov ah,al mov cl,4 shr ah,cl and al,00001111b add ah,30h add al,30h mov bx,0b800h mov es,bx mov byte ptr es:[160*12+30*2],ah mov byte ptr es:[160*12+30*2+2],al mov.原创 2021-09-20 10:24:38 · 1285 阅读 · 1 评论 -
王爽汇编语言 实验12
解:assume cs :codecode segmentstart: mov ax,cs mov ds,ax mov si,offset do0 mov ax,0 mov es,ax mov di,200h mov cx,do0end-do0 cld rep movsb mov ax,0 mov es,ax mov word ptr es:[0],200h mov word ptr es:[2],0 mov ax,4c00h int 21h .原创 2021-09-20 10:23:29 · 1042 阅读 · 0 评论 -
王爽汇编语言 实验11
assume cs:codesgdatasg segment string db "Beginner's All-purpose Symbolic Instruction Code.",0 lengthofchr = $-string-1datasg endscodesg segmentstart: mov ax,datasg mov ds,ax mov si,0 call letterc mov ax,4c00h int 21hletterc: mov cx,len..原创 2021-09-20 10:21:40 · 1245 阅读 · 1 评论 -
王爽汇编语言 实验10
1、显示字符串解:assume cs:code data segment db 'Welcome to masm!',0data endscode segment start: mov dh,8 mov dl,3 mov cl,2 mov ax,data mov ds,ax mov si,0 call show_str mov ax,4c00h int 21hshow_str: push ax push bx push cx push dx push s原创 2021-09-19 18:24:42 · 1324 阅读 · 0 评论 -
王爽汇编语言 实验9
assume cs:code,ds:data,ss:stackdata segment db 'welcome to masm!' db 2h,24h,71hdata endsstack segment dw 0,0,0,0,0,0,0,0stack endscode segmentstart: mov ax,data mov ds,ax mov ax,stack mov ss,ax mov s...原创 2021-09-19 18:22:34 · 959 阅读 · 0 评论 -
王爽汇编语言 实验8
参考这篇文章:https://blog.csdn.net/qq_43504939/article/details/90385360原创 2021-09-19 18:21:28 · 360 阅读 · 0 评论 -
王爽汇编语言 实验7
解:assume cs:code,ds:data,ss:stackstack segment stack db 0,0,0,0,0,0,0,0stack endsdata segment ;年份 db '1975', '1976', '1977', '1978', '1979', '1980', '1981', '1982', '1983' db '1984', '1985', '1986', '1987', '1988', '1989', '1990', '1...原创 2021-09-19 18:19:09 · 1702 阅读 · 2 评论 -
王爽汇编语言 实验6
assume cs:codesg,ss:stacksg,ds:datasgstacksg segment dw 0,0,0,0,0,0,0,0stacksg endsdatasg segment db '1. display ' db '2. brows ' db '3. replace ' db '4. modify 'datasg endscodesg segmentstart: mov ax,datasg mov ds...原创 2021-09-19 17:25:54 · 480 阅读 · 0 评论 -
王爽汇编语言 实验5
(1).1 当debug未执行我们的代码段指令时,从075A:0000开始的256字节是PSP段(之前的实验中已经进行过相关解释),而此时我们定义的数据是从075A:0100开始存放的。这个时候DS可能只是被初始化为075A(SS,CS同理被初始化) 此时的DS段内容如下: 而当使用-g 001d执行完我们的代码段指令后,会发现DS,CS,SS段的段地址已经发生了变化: DS段内容相应地变成了(注意和未执行指令时的DS段内容对比):(1).2实验结果:(1...原创 2021-09-19 17:22:17 · 1511 阅读 · 0 评论 -
王爽汇编语言 实验4
(1)assume cs:codesgcodesg segment mov ax,0 mov ds,ax mov al,0 mov bx,0200h mov cx,64 s: mov [bx],al inc bx inc al loop s mov ax,4c00h int 21hcodesg endsend(2)是(1)的改进assume cs:codesgcodesg segment mov ax,20H mov d..原创 2021-09-19 17:11:09 · 475 阅读 · 0 评论 -
王爽汇编语言 实验3
(1)、(2)(3) 一般来说,PSP是256个字节,当程度生成了可执行文件以后,在执行的时候,先将程序调入内存,这个时候DS中存入程序在内存中的段地址,紧接着是程序的一些说明,比如说程序占用多大空间等等,这就是PSP,一般PSP占256个字节,然后才是真正的程序地址,将CS指向这里,IP设为0000,为什么一般CS要比DS大10H,就是因为这个原因,简单说:DS存放的是程序段地址,由于PSP的存在,真正要执行的地址是DS再加上256个字节。 以本例程的DS和CS为例,我们可以发现DS .原创 2021-09-19 17:07:16 · 1547 阅读 · 0 评论 -
王爽汇编语言 实验2
解:说明:在2000:0 f 内存中,存放了CS,IP,标志寄存器,具体可以看《汇编语言》12.11 单步中断部分内容。原创 2021-09-19 16:59:05 · 678 阅读 · 0 评论 -
王爽汇编语言 实验1
解:解:开始执行,直到AX=0100H,即AX=256解:原创 2021-09-19 16:57:18 · 1131 阅读 · 0 评论