实验一:查看CPU和内存,用机器指令和汇编指令编程

简介: 实验一:查看CPU和内存,用机器指令和汇编指令编程

实验一:查看CPU和内存,用机器指令和汇编指令编程

实验场景:ubuntu18.04版本

1.进入DOS系统

先在系统上安装sudo apt-get install dosbox

2.在终端处直接输入dosemu进入DOS系统

3.输入debug,便可进行debug调试

debug命令及其使用

所使用到的Debug功能。

1.R(Register)命令查看,改变CPU寄存器中的内容

2.D(Dump)命令查看内容中的内容

3.E(Enter)命令改写内容中的内容

4.U(Unassemble)命令将内存中的机器指令翻译成汇编指令

5.T(Trace)命令执行一条机器指令

6.A(Assemble)命令以汇编指令的格式在内存中写入一条机器指令


具体实际操作可以跟着王爽的汇编语言进行

8cc0c4b606a84f37aa9359cc93695cb8.png


直接输入r可以查看各个寄存器中的值

6d9b5ea7ce964a68ad0c8217e8f6c603.png


输入r ax按下回车之后可以输入16进制的数字就可以往寄存器中输入想输入的值

206ce8889a874847aa4c4ae25622cb12.png


D命令可以查看内容中的内容,输入格式是d 段地址:偏移地址的格式来查看例如要查看10000H中的内容d 1000:0。输出的形式是左边是地址,中间是机器码,右边是对应的ASCII码.

5c8e121d759643b8a82f69e3190b40c2.png


E命令来改写内容中的内容


5d4551e4a8d04eca8e4421780fdd8cff.png

用e改写内容中的内容,用u对机器指令进行反汇编处理


2b18047c43ce4166ac317ef0df23c65c.png

T指令可以执行CS:IP处的指令。可以通过R指令将CS和IP改到自己想要的位置,再使用T指令执行。2adb418d9c2b42798a7816788a97a2c8.png


a指令将对指定地址进行汇编语言的编写


目录
相关文章
|
17天前
|
Linux
Linux rsyslog占用内存CPU过高解决办法
该文档描述了`rsyslog`占用内存过高的问题及其解决方案。
40 4
|
1月前
|
移动开发 运维 监控
掌握Linux运维利器:查看CPU和内存占用,轻松解决性能问题!
掌握Linux运维利器:查看CPU和内存占用,轻松解决性能问题!
|
1月前
|
监控 Python
【python】实现cpu/内存监控的功能(非常简单)
【python】实现cpu/内存监控的功能(非常简单)
|
1月前
|
Linux
Linux 查看进程PID和线程CPU和内存占用情况
Linux 查看进程PID和线程CPU和内存占用情况
37 0
|
2月前
|
运维 监控 网络协议
JAVA 线上故障排查完整套路,从 CPU、磁盘、内存、网络、GC
JAVA 线上故障排查完整套路,从 CPU、磁盘、内存、网络、GC
74 0
|
1月前
|
移动开发 Linux
Linux下如何查看哪些进程占用的CPU内存资源最多
Linux下如何查看哪些进程占用的CPU内存资源最多
|
22天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
12天前
|
存储 弹性计算 固态存储
阿里云服务器CPU内存配置详细指南,如何选择合适云服务器配置?
阿里云服务器配置选择涉及CPU、内存、公网带宽和磁盘。个人开发者或中小企业推荐使用轻量应用服务器或ECS经济型e实例,如2核2G3M配置,适合低流量网站。企业用户则应选择企业级独享型ECS,如通用算力型u1、计算型c7或通用型g7,至少2核4G配置,公网带宽建议5M,系统盘可选SSD或ESSD云盘。选择时考虑实际应用需求和性能稳定性。
123 6
|
1月前
|
缓存 安全 Java
Java并发编程进阶:深入理解Java内存模型
【4月更文挑战第6天】Java内存模型(JMM)是多线程编程的关键,定义了线程间共享变量读写的规则,确保数据一致性和可见性。主要包括原子性、可见性和有序性三大特性。Happens-Before原则规定操作顺序,内存屏障和锁则保障这些原则的实施。理解JMM和相关机制对于编写线程安全、高性能的Java并发程序至关重要。
|
3天前
LabVIEW中CPU和内存使用情况在NI分布式系统管理器中不可见
LabVIEW中CPU和内存使用情况在NI分布式系统管理器中不可见
10 3