170320 汇编-第四章-程序结构、debug跟踪,qt图片适应

来源:互联网 发布:社交网络 百度云盘 编辑:程序博客网 时间:2024/05/20 08:25

1625-5 王子昂 总结《2017年3月20日》 【连续第170天总结】

A.PyQt 图片插入并自适应控件

汇编语言第四章

B.一开始按照Qt 图片适应找到了很多教程,但是准备尝试的时候仔细一看,全是C++的代码……各种各种、类的顺序都完全不一样

无奈全部关闭,重新按照PyQt5搜索,终于找到了需要的代码

self.Image1=QtGui.QImage("../../resistance.jpg")self.label.setPixmap(QtGui.QPixmap.fromImage(self.Image1).scaled(self.label.size()))
QImage在QtGui模块下,通过QPixmap.fromImage来转换成QPixmap显示在Label控件中
不过QT中使用资源文件的配置还需要研究一下,明天看看把前端的界面写好,然后尝试图片的传输
汇编程序也是通过文本编辑器书写代码,然后编译成目标文件,再连接生成可执行文件。
一个简单的程序:
assume cs:codesg
codesg segment
mov ax,0123H
mov bx,0456H
add ax,bx
add ax,ax
mov ax,4c00H
int 21H
codesg ends
end
其中,segments...ends表示定义一个段,本段名称为codesg。
结尾的end表示汇编程序结束,注意与ends不同
assume表示某个寄存器与某个段相关联,需要以此声明
程序B运行的过程,首先需要有一个程序A把它加载入内存,当它运行完成后再将CPU的控制权归还给原程序A
称这个过程为 程序返回
mov ax,4c00H
int 21H
就是为了实现这个功能的
操作系统的外壳(shell):任何通用的操作系统,都要提供一个称为shell的程序,用户使用这个程序来操作计算机系统进行工作。
DOS中有一个程序command.com,称为命令解释器,就是DOS系统的shell。
在DOS中调用exe文件,shell就作为程序A,将exe文件加载入内存中
可以用Debug来跟踪一个程序的运行过程,也就是让Debug来作为程序A,这样就可以看到exe程序的运行过程
Debug加载程序的过程:
找到一段起始地址为SA:0000的容量足够的空闲内存区;
在这段内存区的前256个字节中,创建一个称为程序段前缀(PSP)的数据区,DOS利用PSP来和被加载程序进行通信;
从这段内存区的256字节处开始,将程序装入,程序的地址被设为SA+10H:0;
将该内存区的段地址存入DS寄存器中,初始化其他相关寄存器后,设置CS:IP指向程序的入口
在debug中使用t命令可以单步调用程序的命令,最后一步int 21要使用-P命令
然后就可以返回debug程序了
C.明日计划
QT前端界面描述、图片传输
汇编语言实验3

1 0
原创粉丝点击