一些 汇编 的 东东

[原创]汇编初学者问题合集 几个简单的汇编初学者问题总结  0 关于指令时间的问题 上次有兄弟问关于 指令时间的问题,答复查看 intel 手册是一个办法。但很多人没有那个东东吧!,所以可以用另一招,在编译时加入 /Sc 选项:ML /Fl /Sc Kinds.asm还有有位兄弟问过 为什么 mov ax,offset table 比 lea ax,table 速度要快?但到底快到什么程度,恐 阅读详情
.386 CODE SEGMENT USE16 ASSUME CS:CODE START: MOV AL,0110011B ADD AL,1011010B MOV AL,-0101001B ADD AL,-101110B MOV AL,1100101B ADD AL,-1011101B MOV AH,4CH INT 21H CODE ENDS END START ;---------------------------test1.asm----------------- .386 STACK SEGMENT USE16 STACK DB 200 DUP(0) STACK ENDS DATA SEGMENT USE16 BUF1 DB 0,1,2,3,4,5,6,7,8,9 BUF2 DB 10 DUP(0) BUF3 DB 10 DUP(0) BUF4 DB 10 DUP(0) DATA ENDS CODE SEGMENT USE16 ASSUME CS:CODE, DS:DATA, SS:STACK START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET BUF1 MOV DI,OFFSET BUF2 MOV BX,OFFSET BUF3 MOV BP,OFFSET BUF4 MOV CX,10 LOPA: MOV AL,[SI] MOV [DI],AL INC AL MOV [BX],AL ADD AL,3 MOV DS:[BP],AL INC SI INC DI INC BP INC BX DEC CX JNZ LOPA MOV AH,4CH INT 21H CODE ENDS END START ;--------------test2.asm------------------- .386 CODE SEGMENT USE16 ASSUME CS:CODE BEGIN: MOV AX,0 DEC AX ADD AX,07FFFH ADD AX,2 NOT AX SUB AX,0FFFFH ADD AX,8000H OR AX,0BFDFH AND AX,0EBEDH XCHG AH,AL SAL AX,1 RCL AX,1 MOV AH,4CH INT 21H CODE ENDS END BEGIN ;------------------test4.asm----------- ;---------------------------- STACK SEGMENT STACK DB 200 DUP(0) STACK ENDS ;---------------------------- DATA SEGMENT hello DB '$This is a test program' hello2 DB ? DATA ENDS ;------------------------------ CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK BEGIN: MOV AX,DATA MOV DS,AX MOV DI,OFFSET hello+23 MOV SI,OFFSET hello2 MOV CX,SI LOAP: MOV BL, [DI] MOV [SI],BL INC SI DEC DI DEC CX JNE LOAP LEA DX,hello2 MOV ah,9 ;display int 21h MOV AH,4CH ;exit INT 21H ;----------------------------- CODE ENDS END BEGIN
我是如何从汇编语言脑残粉转变的 我最早接触汇编语言可以追溯到裕兴学习机那一阵。当时裕兴在推出了浮点BASIC和游戏BASIC之后还不过瘾,觉得还能更深一步挖掘机器的潜力,结果推出了6502汇编语言的磁碟。我当时第一时间买了,磁碟还附赠一本简单的编程手册(十几页吧,蛮薄的)。可说出来不怕各位童鞋笑话,我基本上是一句指令都没写出来的干活啊!:(     在我人生正式课堂晓(xiao一声)习的最后1年里,我曾从图书馆借阅了《IBM汇 阅读详情

相关推荐

【老生谈算法】可视化通道流中瞬时涡量场的算法实现与MATLAB源码分析——瞬时涡量场

本文旨在探讨可视化通道流中瞬时涡量场的方法,并通过MATLAB编程实现这一过程。涡量场作为描述流体旋涡强度和方向的重要物理量,对于理解复杂流体运动具有重要意义。本文首先介绍了涡量场的基本概念,随后详细阐述了从测量数据收集到涡量场可视化的完整流程,并给出了相应的MATLAB源码。通过实际运行该源码,我们展示了涡量场的可视化结果,并讨论了其在流动结构识别和动力学行为理解中的应用。关键词: 涡量场;流体运动;MATLAB;可视化;PIV一、引言。

m0_53407570的博客 1125

汇编笔记:运算指令的例子

计算,x y z v 都是16位 (v - ( x * y + z - 540 ) ) / x MOV AX x ; x 放入 ax IMUL Y ; 乘 y,变成32位 MOV CX, AX ; 低16位在ax里,将低16位放进cx中 MOV BX, DX ; 高16位在dx里 MOV AX, Z ; 将z存入ax,是16位 CWD ; 将z变成32位,这时z的高16位在dx里, 低16位在ax里 ADD CX, AX ; 将x*y的低16位 + z的低16位(cx + ax) ADC

yogur_father的博客 387

表格数据学习的图神经网络综述

今天学习一篇发表在中科院一区期刊《ACM Computing Surveys》的综述文章《Graph Neural Networks for Tabular Data Learning: A Survey with Taxonomy & Directions》,该刊主要刊载计算机理论方法领域的系统性综述与教程论文,注重跨学科技术融合研究,最新的影响因子为28.0。本文的目的在于通过学习这篇文章,了解关于表格数据学习点图神经网络一些基础知识。

qq_41009600的博客 800

汇编的东东

通用寄存器:共八个,分别是EAX、EBX、ECX、EDX、ESP、EBP、EDI、ESI。其中,EAX—EDX这四个寄存器又可称为数据寄存器,你除了直接访问外,还可分别对其高十六位和低十六位(还计的我说它们是32位的吗?)进行访问;这四个寄存器,主要就是用来暂时存放计算过程中所用的操作数、结果或其它信息 。而ESP、EBP、EDI、ESI这四个呢,就只能用字来访问,它们的主要用途就是在

jjhoncy的专栏 633

【嵌入式】树莓派部署NCNN的YOLOv5模型

树莓派部署NCNN框架的YOLOv5模型

Ace_Spade的博客 3783

实战分享:如何利用svchost进程绕过360防护(附完整Shellcode注入教程)

本文深入解析系统进程安全防护机制,探讨svchost等关键进程的安全特性与防护策略。详细分析安全软件的行为检测和内存保护技术,提供系统加固与监控实践建议,助力企业构建多层次防御体系,有效应对潜在安全威胁。

weixin_30752699的博客 99

汇编学习(一)

1.需求1.工作这几年中虽然都是使用c/c++,但有时跟踪bug最后都是到汇编中,而那部分代码大部分都无法看懂2.还有最近在搞反汇编,也需要一些汇编的知识3.程序有时候运行较慢,汇编可能更直接些2.方法1.先找一本基础教程 “Intel汇编语言程序设计”2.开始最简单的c++中嵌入汇编3.写c++函数下断点,用vc带的反汇编查看汇编,搞下来,自己修改下4.c++和汇编达到互调5.用汇编重写和硬件关联

zhang_ruiqiang的博客 967

Ubuntu24.04下Librenms的完整安装与配置指南

本文提供了在Ubuntu 24.04 LTS系统上完整安装与配置LibreNMS网络监控系统的详细指南。内容涵盖系统环境准备、依赖安装、源码获取、PHP/数据库/Nginx配置、Composer安装、网页向导设置以及设备添加与日常使用,帮助用户快速部署一套功能强大的开源网络监控解决方案。

tgb3456789的博客 1139

GNU内嵌汇编 - C与汇编混合编程(一)

一、格式   asm volatile (“asm code”:output:input:changed); //必须以‘;’结尾,不管有多长对C都只是一条语句   asm 内嵌汇编关键字   volatile 告诉编译器不要优化内嵌汇编,如果想优化可以不加   ANSI C规范的关键字: (ANSI C把asm用于其它用途,不能用于内嵌汇编语句,GCC可以)     __asm__     __volatile__ //前面和后面都有两个下划线,它们之间没有空格   如果后面部分没有内容,‘:’可以省略,

生活需要深度 1058

CANape快速上手

文章帮助记录CANape学习过程。

小弱鸡的博客 1万+

乐企增值税及附加税费(一般纳税人适用)申报表填报能力说明文档V3.009

申报表填报,是指企业在自有业务系统中将算税结果数据按预填规则要求加工汇总后,进行申报表填报的过程。申报表填报前对纳税申报所需的前提条件进行校验。校验通过后,应用前序算税结果数据及预填规则进行纳税申报表预填,生成申报表数据。申报表数据通过申报业务规则校验后,经纳税人确认即完成申报表填报业务。

记录点滴 345

用汇编写的病毒的原理

如何写一个简单的病毒程序      作者浑浑噩噩        转载请注明出处:http://www.czvc.com       引:前些天学病毒这门技术着实吃了很多苦头,走了很多弯路,尽管按我的知识水平,病毒已经是水到渠成的学习内容了。但是我现在学了入门才发现这门技术实际上隐藏着很多玄机,包含着许多技术,不专门学习研究根本无法达到“牛”的境界上去。如今写了这篇文章,介绍的都是相当实用的东西,可

8090

电源防反接保护电路全攻略实战A04

本文深入剖析了硬件设计中电源保护电路的关键技术与实战经验。文章指出,保护电路虽小但至关重要,通过对比分析二极管与MOSFET防反接方案,揭示了MOSFET在效率、温控方面的优势。针对过压保护,重点讲解了TVS二极管选型要点,强调钳位电压而非击穿电压才是保护核心。文章结合工业案例(如48V通信模块烧毁、5V系统MOSFET过热等),详细阐述了PCB布局规范、热设计路径等工程细节,并提供了USB接口ESD防护的完整选型方案。最后强调硬件设计必须考虑最坏工况,在成本与性能间找到平衡点,避免因小失大。

启芯硬件的博客 777

Android手机玩8086汇编

【前言】   什么前言?要不想听老贺讲故事,直接看正文。   教C/C++课时,曾带领弟子们用手机编程序。程序稍大就不好玩了,但遇个小程序,那还是很爽的。尤其是第一次课,就在课堂,还没有在台式机上干活时。   这学期教汇编语言,也想过这事,没有落实。   其实这事应该简单,如果有Android中的DOS模拟器,那就一切妥了。   今天,和DosBox Turbo偶遇了!      这是

迂者-贺利坚的专栏 1万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

一步步编写操作系统 78 intel汇编与AT&T汇编语法区别

本节咱们介绍下intel汇编语法和at&t汇编语法的区别。 以上表中未列出这两种语法在内存寻址方面的差异,个人觉得区别还是很大的,下面单独说说。 在Intel语法中,立即数就是普通的数字,如果让立即数成为内存地址,需要将它用中括号括起来,“[立即数]”这样才表示以“立即数”为地址的内存。 而AT&T认为,内存地址既然是数字,那数字也应该被当作内存地址,所以...

sinolover的专栏 554

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

汇编,又见汇编

         汇编,是谁的语言?学程序,不学汇编?不敢说自已是程序员呀!要学会汇编是多么漫长而痛苦的一个过程呀,明白为什么大家都知道汇编,算法,编译原理的重要性而没有多少人学好吗?很EASY,大都知难而退了。编程的很少没有学过这些东东的,也很少有坚持学这些东东的。我要坚持学汇编,坚持完一年,敲一些汇编的代码,在项目之余。呵呵,C#什么的也要学,给的精力一半一半吧。今年干脆不学C,不学算法了,C

Code In China 743

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

汇编语言的回想

<br />唔,说起为什么接触到汇编语言,可能很可笑,我最早买的第一本编程语言教材是讲VB写数据库的,对于VB已经忘得一塌糊涂了,当时是想学一门编程语言的,那时候(天哪,那还是初一的时候)在一些杂志上例如《电脑报》等,看见别人用VB写了个小程序,煞是激动,立即跑去书店买本教材,书倒是憋屈的看完了,可真正到电脑上写程序的时候就傻了,一个重要的问题困扰着我:这个可视化界面怎么用?......<br /> <br />咱也不傻,上网学去,到太平洋转了半天,点进了一个C的教学页面,还想着关闭来着就见网页上的C的广告

Alpha_Truly的专栏 458

几个简单的汇编初学者问题总结

导读:   新一篇: 对C++ STL iostram 中 cin.get(char* cs,int size,char c=/n) 的理解   几个简单的汇编初学者问题总结      0 关于指令时间的问题      上次有兄弟问关于 指令时间的问题,答复查看 intel 手册是一个办法。   但很多人没有那个东东吧!,所以可以用另一招,在编译时加入 /Sc   选项:   ML /

xu的blog 1448

不得不看的好东东《编程之道》...HOT

不得不看的好东东《编程之道》...HOT 前些日子在优快云看到一篇文章,虽然是写笔者的人生 经历,但里面提及的技术让我目瞪口呆(呆了半天说不出话来),(高中生的写尼姆达病毒源代码析,清华研究生写了Linux服务器集群系统,Lion 是四年制中专生.....),嗨,想想这些,再看看自己,都20来岁了,想想在这方面不可能有多大建树了,真是有些伤感。静下心来,参考了一些资料,总结 了一些专家点评再加上

myfreeway的专栏 1311

暑假时写的一点东东

回来这么久了 ,心中一直烦得很,不知是怎么一回事。总也学不下习,一看书就心烦,虽说那书确实有点烦的,我现在一见到程序代码就不想看,简直是看不下去了。真不知自己当初是怎么选了这个专业的 ,可是却一点也学不好,找不到一点儿的感觉,我时常在想如果两年后自己站在求职的位子上我该如何做呢?四年的大学生活自己到底学到了什么?我一无所获,真的,真的没学到什么东西,心里一直空虚得很,学什么都没一点劲,当年高考复读

笑天的专栏 1132

GNU内嵌汇编资料

一、格式     asm volatile (“asm code”:output:input:changed);    //必须以‘;’结尾,不管有多长对C都只是一条语句         asm                 内嵌汇编关键字         volatile            告诉编译器不要优化内嵌汇编,如果想优化可以不加         ANSI C规范

此站&彼岸 605

汇编学习一

 写了这么久的程序,一直有一个疑惑··· 程序是怎么运行的?它的本质是什么··? 这样的疑惑令人很不安~ 于是决定开始学习汇编语言,使用的教材是王爽老师的《汇编语言》(第二版) 里面的《实验七》很有意思,仔细花了两个晚上来思考 其中实验的目标是这样的:         分析下~~~ 对于年份来说:   在datasg中偏移为0,一个元素中...

爱技术,爱生活 228

c调用汇编

在此记录一下c调用汇编,汇编使用的是AT&T语法。例子很简单,就是在给一个整数用汇编转换成二进制。 c部分很简单,文件名随便,如main.c: #include <stdio.h> #include <stdlib.h> void decToBin(long dec,char *b); //声明外部汇编函数 int main() ...

Sight2012的博客 234

汇编怎么从内存地址写入连续的数字_一步步编写操作系统 78 intel汇编与AT&T汇编语法区别...

本节咱们介绍下intel汇编语法和at&t汇编语法的区别。以上表中未列出这两种语法在内存寻址方面的差异,个人觉得区别还是很大的,下面单独说说。在Intel语法中,立即数就是普通的数字,如果让立即数成为内存地址,需要将它用中括号括起来,“[立即数]”这样才表示以“立即数”为地址的内存。而AT&T认为,内存地址既然是数字,那数字也应该被当作内存地址,所以,数字被优先认为是内存地址,也就...

weixin_39964833的博客 354

汇编语言-实验4

汇编语言-实验4前言一、实验目的二、实验过程和结果 前言 作者介绍:友友们好我是乱披风锤,大二学生党一枚 作者主页:乱披风锤的个人博客主页.跳转到个人简介 我和友友们一样喜欢编辑,天天敲代码🤭,沉迷学习,日渐消瘦。很荣幸能向大家分享我的所学,和大家一起进步,成为合格的卷王。如果文章有错误,欢迎在评论区指正。那么开始今天的学习吧! 那么今天的学习就到这里了。友友们觉得不错的可以给个关注,点赞或者收藏哦!感谢各位友友们的支持。以下的代码希望各位大佬们自行检验哦,毕竟亲手操作让记忆更加深刻。 一、实验目的

yi_chen_c的博客 2029

汇编指令理解小记——一切皆数据

1.首先使用debug 指令a 输入以下汇编 红框标注的为输入的汇编指定 2.在dosbox 使用debug.exe 中 d指令查看段地址为2000 偏移地址为0的数据 可以看出刚输入的汇编指令实际在内存中的形态-数据,根据红框的内容,可以看到debug 将数据翻译为ascii 字符编码,图中所以数字均为16进制编码,图中显示字符“X”的内存位置 所对应的数据为78(16进制) 下面这张图是ascii编码表,看到一切皆数据,代码也是数据,如果由ascii进行编码,就会成为我们人类可识别的字符图

qq_39153711的博客 524
上一篇: 进程的控制[原创]
下一篇: CString小讲
beff2047
博客等级 码龄22年 14粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值