当前位置:  技术问答>linux和unix

菜鸟求教

    来源: 互联网  发布时间:2016-02-19

    本文导语:  int printk(const char *fmt, ...) { va_list args; int i; va_start(args, fmt); i=vsprintf(buf,fmt,args); va_end(args); __asm__("push %%fsnt"  //保存fs "push %%dsnt"  "pop %%fsnt"   //令fs=ds "pushl %0nt"   将字符串长度压入队栈 "pushl $_bu...

int printk(const char *fmt, ...)
{
va_list args;
int i;

va_start(args, fmt);
i=vsprintf(buf,fmt,args);
va_end(args);
__asm__("push %%fsnt"  //保存fs
"push %%dsnt" 
"pop %%fsnt"   //令fs=ds
"pushl %0nt"   将字符串长度压入队栈
"pushl $_bufnt"//将buf的地址压入堆栈
"pushl $0nt" //将数值0压入堆栈。通道号channel
"call _tty_writent"
"addl $8,%%espnt"
"popl %0nt"
"pop %%fs"
::"r" (i):"ax","cx","dx");
return i;
}
其中的汇编代码,我看不太懂, 为什么汇编第三行表示fs=ds,通道号是什么东东?
还望高人指点,跪谢!

|
还不是很明白,   pop   fs   弹出的是fs,怎么会把ds弹出     并给fs赋值呢
============================================================================
看来兄弟对汇编还不熟,pop fs是告诉编译器与CPU,在栈中弹出4个字节的数据并存入fs寄存器中,然后栈指针再移动4个字节,至于是不是将ds弹出并给fs赋值,就看你入栈的顺序了,入栈顺序与出栈顺序是要你自己保证的,编译器与CPU只负责移动栈指针,只负责将相应的多少字节的数据存入你所指示的寄存器中。。。

    
 
 

您可能感兴趣的文章:

  • 菜鸟求教:关于画图!
  • 有关L的问题(菜鸟求教)???
  • 菜鸟求教嵌入式系统的概念!
  • 菜鸟问题,jdk安装求教
  • 菜鸟求教!--linux编程初学者
  • 菜鸟求教一个关于XSERVER的问题
  • 菜鸟求教,execl()问题
  • linux菜鸟求教
  • 菜鸟求教:关于声音类!
  • 菜鸟求教一个script安装的问题
  • shell 菜鸟脚本求教
  • 菜鸟来求教,如何分区,本人装两个操作系统
  • 我是菜鸟,求教高手!!!!!!!!!!!!!!
  • 菜鸟求教几个基本问题
  • 菜鸟求教:linux 如何用时间片轮换进程,在进程间切换?
  • 菜鸟求教!关于进程调度的问题!
  • 菜鸟求教:做Java的应该怎么学习Linux/Unix ?
  • 求教一个linux shell的菜鸟问题
  • 50求教一个菜鸟级别的UDP套接字问题,关于UDP server端只能接收一次数据的问题?在线等,一直等............
  • (菜鸟求教:)用过JRun studio3和JBuilder的大虾看过来!!!!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • ----菜菜鸟第三问:-菜鸟菜问:JAVA如何求 根号、开次方? -----
  • 菜鸟问一个关于j2ee的菜鸟问题
  • 怎样从一个菜鸟级的java programer升级到一个菜鸟级的java developer
  • 一个连菜鸟都算不上的菜鸟
  • 菜鸟求问菜鸟问题 ,域名绑定
  • ===菜鸟系列===:写过毕业论文的前辈请进!!!菜鸟散分啦!!!!
  • gcc问题---菜鸟发问之一,老大们帮忙啊!!菜鸟分不多,只好给这点了,对不起!!
  • 菜鸟又来问菜鸟问题了
  • 菜鸟的Linux练习疑问……
  • 菜鸟刚学jsp,还不知道怎么和sql server2000的数据库相连,我已经把odbc配好了,谁能给我一段和数据库相连的并显示所有数据的代码!菜鸟
  • 菜鸟提问,我怎么装redhat7。1
  • 菜鸟写的俄罗斯方块,请多多批评!
  • 小问题,你一定能够帮忙!——菜鸟请求帮忙!!
  • 一个菜鸟的请求: 哪位前辈能给晚辈讲讲“匿名类”
  • ※菜鸟送分之一※ Red Hat Linux 的最高版本是多少?
  • 菜鸟问题:在Java中如何接收从键盘输入的字符串?
  • ★菜鸟问:怎么在RED HAT LINUX7.2中用169上网??
  • 菜鸟提问:包是什么概念?
  • 菜鸟问题~~快点进来拿分
  • 菜鸟菜问题1


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3