王爽汇编语言第三版实验8和9
目录
王爽汇编语言第三版实验1
王爽汇编语言第三版实验2
王爽汇编语言第三版实验3
王爽汇编语言第三版实验4
王爽汇编语言第三版实验5
王爽汇编语言第三版实验6
王爽汇编语言第三版实验7
王爽汇编语言第三版实验8和9
王爽汇编语言第三版实验10和11
王爽汇编语言第三版实验12
王爽汇编语言第三版实验13
王爽汇编语言第三版实验14
实验任务
分析一个奇怪的程序(课本实验8)
贴入代码如下:
12345678910111213141516171819assueme cs:codesgcodesg segment mov ax,4c00h int 21h start: mov ax,0 s: nop nop mov di,offset s mov si,offset s2 mov ax,cs:[si] mov cs:[di],ax s0: jmp short s s ...
王爽汇编语言第三版实验7
目录
王爽汇编语言第三版实验1
王爽汇编语言第三版实验2
王爽汇编语言第三版实验3
王爽汇编语言第三版实验4
王爽汇编语言第三版实验5
王爽汇编语言第三版实验6
王爽汇编语言第三版实验7
王爽汇编语言第三版实验8和9
王爽汇编语言第三版实验10和11
王爽汇编语言第三版实验12
王爽汇编语言第三版实验13
王爽汇编语言第三版实验14
实验任务
课本实验7 寻址方式在数据化数据访问中的应用
解答:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768assume cs:codedata segment ;1B db '1975','1976','1977','1978','1979','1980','1981', ...
王爽汇编语言第三版实验6
目录
王爽汇编语言第三版实验1
王爽汇编语言第三版实验2
王爽汇编语言第三版实验3
王爽汇编语言第三版实验4
王爽汇编语言第三版实验5
王爽汇编语言第三版实验6
王爽汇编语言第三版实验7
王爽汇编语言第三版实验8和9
王爽汇编语言第三版实验10和11
王爽汇编语言第三版实验12
王爽汇编语言第三版实验13
王爽汇编语言第三版实验14
实验任务
编程完成问题7.9中的程序,要求使用至少两种不同的寻址方式实现。
编程,将 datasg 段中每个单词的前 4 个字母改为大写字母。
123456789101112131415assume cs:codesg,ds:datasg,ss:stacksgstacksg segment dw 0,0,0,0,0,0,0,0stacksg endsdatasg segment db '1. display ' db '2. brows ' db '3. replace ' ...
王爽汇编语言第三版实验5
目录
王爽汇编语言第三版实验1
王爽汇编语言第三版实验2
王爽汇编语言第三版实验3
王爽汇编语言第三版实验4
王爽汇编语言第三版实验5
王爽汇编语言第三版实验6
王爽汇编语言第三版实验7
王爽汇编语言第三版实验8和9
王爽汇编语言第三版实验10和11
王爽汇编语言第三版实验12
王爽汇编语言第三版实验13
王爽汇编语言第三版实验14
实验任务一将下面的程序编译连接,用Debug加载、跟踪,然后回答问题。123456789101112131415161718192021assume cs:code,ds:data,ss:stackdata segment dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987hdata endsstack segment dw 0,0,0,0,0,0,0,0stack endscode segment start:mov ax,stack mov ss,ax mov sp,16 mov ax,data ...
王爽汇编语言第三版实验4
目录
王爽汇编语言第三版实验1
王爽汇编语言第三版实验2
王爽汇编语言第三版实验3
王爽汇编语言第三版实验4
王爽汇编语言第三版实验5
王爽汇编语言第三版实验6
王爽汇编语言第三版实验7
王爽汇编语言第三版实验8和9
王爽汇编语言第三版实验10和11
王爽汇编语言第三版实验12
王爽汇编语言第三版实验13
王爽汇编语言第三版实验14
实验任务题目如下
第一和第二题运行结果相同,因此一起作答,代码如下
12345678910111213assume cs:codecode segment mov bx,0 mov ds,bx mov cx,40h next: mov ds:[bx+200h],bx inc bx loop next mov ax,4c00h int 21hcode endsend
运行结果
第三题:
12345678910111213141516assume cs:codesgcodesg segment ...
王爽汇编语言第三版实验3
目录
王爽汇编语言第三版实验1
王爽汇编语言第三版实验2
王爽汇编语言第三版实验3
王爽汇编语言第三版实验4
王爽汇编语言第三版实验5
王爽汇编语言第三版实验6
王爽汇编语言第三版实验7
王爽汇编语言第三版实验8和9
王爽汇编语言第三版实验10和11
王爽汇编语言第三版实验12
王爽汇编语言第三版实验13
王爽汇编语言第三版实验14
实验任务
将下面的程序保存为t1.asm,将其生成可执行文件t1.exe
用Vscode编写源程序t1.asm
用脚本一键生成可执行文件t1.exe
成功运行
查看资源管理器,成功生成T1.obj与t1.exe文件‘
用debug跟踪t1.exe的执行过程,写出每一步执行后,相关寄存器中的内容和栈顶的内容
同样用脚本一键调试程序
用u命令验证一下,指令是否写入程序
用t命令逐步执行
这里要注意的是当遇到int 21终止指令的时候,要使用p命令而不是用t命令
这里第一次做因为没有使用t命令,导致程序并没有正常退出
根据上面的运行结果,得出各个寄存器的值是
PSP的头两个字节是CD20,用Debug加载t1.exe,查看PSP ...
王爽汇编语言第三版实验2
目录
王爽汇编语言第三版实验1
王爽汇编语言第三版实验2
王爽汇编语言第三版实验3
王爽汇编语言第三版实验4
王爽汇编语言第三版实验5
王爽汇编语言第三版实验6
王爽汇编语言第三版实验7
王爽汇编语言第三版实验8和9
王爽汇编语言第三版实验10和11
王爽汇编语言第三版实验12
王爽汇编语言第三版实验13
王爽汇编语言第三版实验14
实验任务(1)使用Debug,将下面的程序段写 入程序,逐条进行,根据指令执行后的实际运行情况填空。123456789101112131415mov ax,ffffmov ds,axmov ax,2200mov ss,axmov sp,0100mov ax,[0] ;ax=C0EAHadd ax,[2] ;ax=COFCHmov bx,[4] ;bx=30F0Hadd bx,[6] ;bx=6021Hpush ax ;sp=00FEH ; 修改的内存单元的地址是2200:00FE内容为COFCHpush bx ;sp=00FCH ; 修改的内存单元的地址是2200:00FC内容为6021pop ax ...
王爽汇编语言第三版实验1
前言本系列的文章是对王爽老师的汇编语言中的实验的解答记录,原书一共有17个实验,由于学校的教学流程只做到了第14个实验,因此本文章只会有前十四个实验的解答记录,还有个比较重要的是,文章中会有原书实验中没有的题目,这些是我的老师自己加的,你不感兴趣就无视。btw,以这篇文章记录我的汇编语言的学习历程
目录
王爽汇编语言第三版实验1
王爽汇编语言第三版实验2
王爽汇编语言第三版实验3
王爽汇编语言第三版实验4
王爽汇编语言第三版实验5
王爽汇编语言第三版实验6
王爽汇编语言第三版实验7
王爽汇编语言第三版实验8和9
王爽汇编语言第三版实验10和11
王爽汇编语言第三版实验12
王爽汇编语言第三版实验13
王爽汇编语言第三版实验14
实验任务(1)使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后CPU中相关寄存器中内容的变化。
提示,可用E命令和A命令以两种方式将指令写入内存。注意用T命令执行时,CS:IP的指向。注:由于篇幅问题,图片仅展示一部分!
解答:
使用A指令编写汇编指令,这里必须注意填写数值的时候不要有H!
更改CS:IP的指向
执行命令,AX和BX的 ...
Iptables,ufw,firewalld的关系与区别
iptables定义:iptables 是 Linux 内核中用于设置和维护 IP 数据包过滤规则的工具。它允许用户创建、管理和检查一系列的规则,这些规则定义了如何处理进入或离开系统的数据包。iptables 是一个底层工具,提供了强大的灵活性和控制能力,但同时也需要用户具备一定的网络知识来有效配置。
用人话总结:用来过滤网络流量的工具,很底层的意思就是非常难用且复杂。
ufw定义:ufw 是一个为简化 iptables 配置而设计的前端工具,特别适合于主机防火墙的设置。它通过提供简单的命令行界面,使得用户能够轻松地允许或阻止特定端口的流量。虽然 ufw 实际上依赖于 iptables 来实现其功能,但它隐藏了许多复杂性,使得防火墙配置变得更为直观和易于管理。
用人话总结:iptables不是很底层吗?ufw做的就是将iptables很难用且复杂的底层操作封装成几个很简单的命令,帮你省去一大堆参数和选项。
firewalldfirewalld 是 Red Hat 开发的一种动态防火墙管理工具,它同样可以作为 iptables 或 nftables 的前端。与 ufw 相比,firewa ...
解决vscode远程连接Linux无权限保存的问题
存在的问题用vscode远程登陆普通用户修改/etc/profile,保存文件时,出现了以下的问题。大体意思就是没有权限进行更改。
解决方法通常情况下,普通用户只能对自己home目录里面的文件进行更改,想要修改home目录以外的文件通常来说都是需要root权限的,在命令行界面可以利用vim编辑器配合sudo来达到这个目的,但是vscode的GUI编辑器里面是没有提供类似的功能的,如果想要通过vscode自带的编辑器修改没有权限的文件,可以通过这个插件
按下ctrl+shift+p,输入save as root
可以看到文件成功保存了