c语言和汇编都可以直接操作寄存器吗?二者有区别吗,怎么看是否能直接操作寄存器

图片说明图上的意思是C不能直接操作吗?还是说操作起来和汇编不一样

可以使用C内嵌汇编来操作!

你可以搜索一下C语言的编译过程
http://www.cnblogs.com/littlehoom/p/3603391.html

汇编操作寄存器可以用命令去操作,而C可以创建寄存器变量,自然也算是对寄存器的操作,另外C代码可以嵌入汇编代码

编译过程:c->汇编->机器码
c->汇编的过程受编译器影响,所以可以理解为“不便于”。

我的理解是:对于通用寄存器,用汇编可以直接指定使用哪一个通用寄存器,但是C是通过已经定好的规则来依次使用通用寄存器,也就是说不受我们控制;对于特殊功用寄存器,我觉得两个语言没区别,因为都可以通过地址访问进行操作。