Excel表格网

汇编语言中取变量段地址?

268 2024-02-29 11:09 admin   手机版

一、汇编语言中取变量段地址?

CS段寄存器的值不能用一般的命令改 只有无条件段间转移,远距离过程调用,软硬件中断指令才能改变CS的值。

变量的段地址:就是该变量所属存储器的段基址,比如你定义的数据变量,一般都存放在数据段DS 那么该变量的段地址就是DS的段基址,

二、汇编语言如何取段地址的?

寄存器DS是默认的数据段地址存储位置,在没有指明具体的存储段地址的情况下,以DS内的段地址为当前段地址,mov [0],cs与mov [DS+0] ,cs是等价的,需要提取其他段的数据可以这样实现:mov ax,2000Hmov DI,axmov [DI+0],cs

三、为什么函数调用形参可以取地址?

第一个swap1的形参里面的&不是取地址的意思,而是表示这是一个引用,是传入参数的引用。第二个swap1的形参是指针,传入的实参才是变量的地址。

而无论是引用还是指针,都能改变实参变量的值,所以两次交换之后,i、j的值不变。

四、score数组为什么输入函数需要取地址?

在C语言中,函数参数传递的是参数的副本,即函数内部的操作不会对原始的参数产生影响。如果不取地址,那么score数组的指针就会被复制一份给形参score,而形参score的地址与实参score的地址是不同的。

这样,函数内部对形参score的任何修改都只会影响到形参的副本,而不会对原始的score数组产生任何影响。

为了让函数能够直接操作原始的score数组,需要将score数组的地址传递给函数,即取地址。

这样,在函数内部对score数组进行的任何修改都会直接影响到原始的score数组。

五、c语言函数参数里的取地址符号是什么意思?

就是找到这个变量的内存地址,直接读写 例如:scanf("%d",&a); 就是找到a的地址,把读入一个数写到a的地址中 在例如 p=&a; 就是让指针p指向a的内存地址,这样直接对内存读写.有利于提高操作速度.

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
用户名: 验证码:点击我更换图片