帮忙看一段C代码 图像处理方面

帮忙看一段C代码 图像处理方面,第1张

看了半天才看明白,这个程序是个画线程序,它的算法好苯,好复杂,看得我晕乎乎的

好了下面我不逐行解释了,但是我会帮你把理解该程序的关键点告诉你。

首先这个源图像肯定是256色DIB位图,这个毫无疑问,根据程序的像素附值0和255,有可能是256色黑白位图,0代表黑色像素,255代表白色像素,但是不一定,通常意义上是这样的,除非他更改了调色板的索引。BYTE pE表示了图像数据的指针,int dh就是作为y0,y1之间的距离判断条件。

我把for循环中间的break,continue去掉,然后把循环合并,程序实际上实现了一个完整像素寻址,依次访问的过程,每次都是从第一列开始,垂直向上循环,然后第二列,再垂直向上,一直到第width列结束。

for(x=0;x<Width;x++)

{

for(y=0;y<hy;y++)

{

pME=pE+rWidthy+x; //这里pME就是指向图像中第y行第x列的像素的指针

pME=255; //就是给像素附值

}

}

rWidth就是图像每一行的总字节数,只不过程序中用了pME+=rWidth的方式来表示,很不直观。

至于该程序实现的目标,为了更形象的表示,我用0,1画图给你表达图像

111111111111111111111111111111111111111111111111

111111111111111111111111111111111111111111111111

111111111111111111111111111111111111111111111111

111111111111111111111111111111111111111111111111

000000000000000000000000000000000000000000

000000000000000000000000000000000000000000

000000000000000000000000000000000000000000

000000000000000000000000000000000000000000

111111111111111111111111111111111111111111111111

111111111111111111111111111111111111111111111111

111111111111111111111111111111111111111111111111

000000000000000000000000000000000000000000

000000000000000000000000000000000000000000

000000000000000000000000000000000000000000

运行该程序之后,就会把两个行1之间的距离小于int dh,则把0全部附值为255,恩就这么简单,结果编写这个程序的人弄得非常难以理解

inXP不能正常关机,按下电源开关也不能关机而又重新启动系统,是什么原因?

首先谈谈Windows系统自动关机的条件。在Win98及更高版本的系统中都支持自动关机,即不通过电源的物理开关实现关机。自动关机是通过作系统支持的ACPI(Advanced Configuration and Power Interface,高级系统配置和电源管理)技术来实现的(当然ACPI的功能不仅仅是自动关机)。ACPI是由英特尔、微软和东芝等多家公司共同开发的,可以在BIOS之上通过作系统进行电源管理。该技术要求主板控制芯片和其他I/O芯片与作系统建立标准联系通道,使作系统可以通过瞬间软电源开关(MSPS:Momentary Soft Power Switch)进行电源管理。因此,只有在硬件(控制芯片)、电源(ATX电源)及作系统(Win98以上版本)都支持ACPI技术的前提下,自动关机才能实现。因此,为了保证自动关机的实现,在BIOS设置中,必须把“ACPI fnuction”设置为“Enabled”;同时必须启用APM(高级电源管理)功能。

自动关机是一个比较复杂的过程,它是由系统进程Csrss和Winlogon配合并调用关机函数ShutdownSystem来完成的,这个函数进一步调用SetSystemPowerState关闭驱动程序和其他的当前执行程序子系统(如即插即用管理器、电源管理器、执行程序、IO管理器、配置管理器、内存管理器等)。此外,执行自动关机时,系统还要检查当前系统中各种外部设备的状态以及尚未关闭的应用程序的状态,处理各个数据缓冲器中的数据等。如果在上述工作中发生错误就不能正常关机。因此一般说来在关机之前应该使各种外设停止工作,关闭所有的应用程序后再行关机。

在Windows系统中的确常常出现自动关机失败的情况,下面谈谈具体的原因和处理办法。

1系统文件中自动关机程序有缺陷。为了确认是否是这个原因所致,可以作下述实验。在“开始/运行”中输入命令:“rundll32 userexe,exitwindows”,看看能否正常关机。如果在这个命令下可以正常关机,表示自动关机程序可能有某种缺陷,如果使用的是Win98系统,请在“开始/程序/附件/系统工具/系统信息/工具/系统文件检查器”检查系统文件的完整性和修补文件。如果采用其他系统(Me/2000/XP),也可在相应的项目中完成文件修补。如果修补文件仍然不能解决问题,只能重新安装系统。而运行“rundll32 userexe,exitwindows”也不能正常关机,则可能是作系统中某些系统程序有缺陷,但是处理办法仍然是修补系统或者重新安装系统。

2病毒和某些有缺陷的应用程序或者系统任务有可能造成关机失败。首先查杀病毒,在关机之前关闭所有的应用程序。由于有些应用程序是系统启动时加载的,因此可在“启动”菜单(在“开始/运行”中输入命令:“msconfig”)中逐个减去加载的程序,以便看看有无影响关机的文件(当然要重新启动之后才能生效)。

3外设和驱动程序兼容性不好,不能响应快速关机。可在“开始/运行”中输入命令:“msconfig”,在“常规”标签页中选择“高级”,在打开的窗口中选择“禁用快速关机”。如果怀疑外设有故障,也可以逐个卸载外设进行检查,以便找到有影响的外设。

4如果设置了在关闭Windows时使用声音文件,当该文件被破坏时也可以造成关机失败。请在“控制面板/声音/事件”中选择“退出Windows”项,把声音名称设置为“无”。这样处理之后如果能够正常关机,则表示的确是该原因所致,可重新安装声音文件供使用。

5在Win98自动关闭时将显示“现在可以安全地关闭计算机了”,这个内容是由Windows目录下的“logossys”文件完成的,如果这个文件损坏则不能出现上述提示,而以文本形式提示:“you can now safely turn off you computer”,这也可能造成自动关机失败,恢复该文件即可。

6安装WinXP后不能自动关机,如果排除了上述各种原因后,有可能是其控制面板中的电源选项设置不正确,请检查你的设置,保证ACPI和APM能够正常工作。也有的主板系统BIOS中的APM(高级电源管理)和Win XP之间不完全兼容(以AMI BIOS为多),因此不能自动关机。选择关机却变成重新启动系统,在这种情况下只能手动关机了(按下电源开关保持4秒钟后放开,如果少于4秒钟则无效)。解决问题的根本办法是升级主板的系统BIOS,采用新的版本。

希望能对你有帮助。

--------------------------------------------------------------------------------

电脑自动重启的可能原因……

★一、软件

◇1.病毒破坏

※※自从有了计算机以后不久,计算机病毒也应运而生。当网络成为当今社会的信息大动脉后,病毒的传播更加方便,所以也时不时的干扰和破坏我们的正常工作。比较典型的就是前一段时间对全球计算机造成严重破坏的“冲击波”病毒,发作时还会提示系统将在60秒后自动启动。其实,早在DOS时代就有不少病毒能够自动重启你的计算机。

※※对于是否属于病毒破坏,我们可以使用最新版的杀毒软件进行杀毒,一般都会发现病毒存在。当然,还有一种可能是当你上网时被人恶意侵入了你的计算机,并放置了木马程序。这样对方能够从远程控制你计算机的一切活动,当然也包括让你的计算机重新启动。对于有些木马,不容易清除,最好重新安装 *** 作系统。

◇2.系统文件损坏

※※当系统文件被破坏时,如Win2K下的KERNEL32DLL,Win98FONTS目录下面的字体等系统运行时基本的文件被破坏,系统在启动时会因此无法完成初始化而强迫重新启动。你可以做个试验,把WIN98目录下的字库“FONTS”改名试一试。当你再次开机时,我们的计算机就会不断的重复启动。

☆☆☆对于这种故障,因为无法进入正常的桌面,只能覆盖安装或重新安装。

◇3.定时软件或计划任务软件起作用

※※如果你在“计划任务栏”里设置了重新启动或加载某些工作程序时,当定时时刻到来时,计算机也会再次启动。对于这种情况,我们可以打开“启动”项,检查里面有没有自己不熟悉的执行文件或其他定时工作程序,将其屏蔽后再开机检查。当然,我们也可以在“运行”里面直接输入“Msconfig”命令选择启动项。

★二、硬件

◇1.市电电压不稳

※※一般家用计算机的开关电源工作电压范围为170V-240V,当市电电压低于170V时,计算机就会自动重启或关机。因为市电电压的波动我们有时感觉不到,所以就会误认为计算机莫名其妙的自动重启了。

☆☆☆解决方法:对于经常性供电不稳的地区,我们可以购置UPS电源或130-260V的宽幅开关电源来保证计算机稳定工作。

◇2.插排或电源插座的质量差,接触不良

※※市面上的电源插排多数质量不好,内部的接点都是采用手工焊接,并且常采用酸性助焊剂,这样容易导致在以后的使用中焊点氧化引起断路或者火线和零线之间漏电。因为手工焊接,同时因为采用的磷黄铜片d性差,用不了多长时间就容易失去d性,致使与主机或显示器的电源插头接触不良而产生较大的接触电阻,在长时间工作时就会大量发热而导致虚接,这时就会表现为主机重新启动或显示器黑屏闪烁。

※※还有一个可能是我们家里使用的墙壁插座,多数墙壁插座的安装都不是使用专业人员,所以插座内部的接线非常的不标准,特别这些插座如果我们经常使用大功率的电暖器时就很容易导致内部发热氧化虚接而形成间歇性的断电,引起计算机重启或显示器眨眼现象。

☆☆☆解决方法:

□① 不要图省钱而购买价廉不物美的电源排插,购买一些名牌的电源插排,因为其内部都是机器自动安装压接的,没有采用手工焊接。

□② 对于是否属于墙壁插座内部虚接的问题,我们可以把主机换一个墙壁插座试一试,看是否存在同样的自动重启问题。

◇3.计算机电源的功率不足或性能差

※※这种情况也比较常见,特别是当我们为自己主机增添了新的设备后,如更换了高档的显卡,增加了刻录机,添加了硬盘后,就很容易出现。当主机全速工作,比如运行大型的3D游戏,进行高速刻录或准备读取光盘,刚刚启动时,双硬盘对拷数据,就可能会因为瞬时电源功率不足而引起电源保护而停止输出,但由于当电源停止输出后,负载减轻,这时电源再次启动。因为保护后的恢复时间很短,所以给我们的表现就是主机自动重启。

※※还有一种情况,是主机开关电源性能差,虽然电压是稳定的也在正常允许范围之内,但因为其输出电源中谐波含量过大,也会导致主机经常性的死机或重启。对于这种情况我们使用万用表测试其电压时是正常的,最好更换一台优良的电源进行替换排除。

☆☆☆解决方法:现换高质量大功率计算机电源。

◇4.主机开关电源的市电插头松动,接触不良,没有插紧

※※这种情况,多数都会出现在DIY机器上,主机电源所配的电源线没有经过3C认证,与电源插座不配套。当我们晃动桌子或触摸主机时就会出现主机自动重启,一般还会伴有轻微的电打火的“啪啪”声。

☆☆☆解决方法:更换优质的3C认证电源线。

◇5.主板的电源ATX20插座有虚焊,接触不良

※※这种故障不常见,但的确存在,主要是在主机正常工作时,左右移动ATX20针插头,看主机是否会自动重启。同时还要检查20针的电源插头内部的簧片是否有氧化现象,这也很容易导致接触电阻大,接触不良,引起主机死机或重启。有时还需要检查20针插头尾部的连接线,是否都牢靠。

☆☆☆解决方法:

□①如果是主板焊点虚焊,直接用电烙铁补焊就可以了。注意:在对主板、硬盘、显卡等计算机板卡焊接时,一定要将电烙铁良好接地,或者在焊接时拔下电源插头。

□② 如果是电源的问题,最好是更换一台好的电源。

◇6.CPU问题

※※CPU内部部分功能电路损坏,二级缓存损坏时,计算机也能启动,甚至还会进入正常的桌面进行正常 *** 作,但当进行某一特殊功能时就会重启或死机,如画表,播放VCD,玩游戏等。

☆☆☆解决办法:试着在CMOS中屏蔽二级缓存(L2)或一级缓存(L1),看主机是否能够正常运行;再不就是直接用好的CPU进行替换排除。如果屏蔽后能够正常运行,还是可以凑合着使用,虽然速度慢些,但必竟省钱了。

◇7.内存问题

※※内存条上如果某个芯片不完全损坏时,很有可能会通过自检(必竟多数都设置了POST),但是在运行时就会因为内存发热量大而导致功能失效而意外重启。多数时候内存损坏时开机会报警,但内存损坏后不报警,不加电的故障都还是有的。最好使用排除法,能够快速确定故障部位。

◇8.光驱问题

※※如果光驱内部损坏时,也会导致主机启动缓慢或不能通过自检,也可能是在工作过程中突然重启。对于后一种情况如果是我们更换了光驱后出现的,很有可能是光驱的耗电量不同而引起的。大家需要了解的是,虽然光驱的ATPI接口相同,但不同生产厂家其引脚定义是不相同的,如果我们的硬盘线有问题时,就可能产生对某一牌子光驱使用没有问题,但对其他牌子光驱就无法工作的情况,这需要大家注意。

◇9.RESET键质量有问题

※※如果RESET开关损坏,内部簧片始终处于短接的位置时,主机就无法加电自检。但是当RESET开关d性减弱或机箱上的按钮按下去不易d起时,就会出现在使用过程中,因为偶尔的触碰机箱或者在正常使用状态下而主机突然重启。所以,当RESET开关不能按动自如时,我们一定要仔细检查,最好更换新的RESET按钮开关或对机箱的外部按钮进行加油润滑处理。

※※还有一种情况,是因为机箱内的RESET开关引线在焊接时绝缘层剥离过多,再加上使用过程中多次拆箱就会造成RESET开关线距离过近而引起碰撞,导致主机自动重启。

◇10.接入网卡或并口、串口、USB接口接入外部设备时自动重启

※※这种情况一般是因为外设有故障,比如打印机的并口损坏,某一脚对地短路,USB设备损坏对地短路,网卡做工不标准等,当我们使用这些设备时,就会因为突然的电源短路而引起计算机重启。☆老妖整理☆

★三、其他原因

◇1.散热不良或测温失灵

※※CPU散热不良,经常出现的问题就是CPU的散热器固定卡子脱落,CPU散热器与CPU接触之间有异物,CPU风扇长时间使用后散热器积尘太多,这些情况都会导致CPU散热不良,积聚温度过高而自动重启。

※※还有就是CPU下面的测温探头损坏或P4CPU内部的测温电路损坏,主板上的BIOS有BUG在某一特殊条件下测温不准,这些都会引起主机在工作过程中自动保护性重启。

※※最后就是我们在CMOS中设置的CPU保护温度过低也会引起主机自动重启。

◇2.风扇测速失灵

※※当CPU风扇的测速电路损坏或测速线间歇性断路时,因为主板检测不到风扇的转速就会误以为风扇停转而自动关机或重启,但我们检查时可能看到CPU风扇转动正常,并且测速也正常。

◇3.强磁干扰

※※不要小看电磁干扰,许多时候我们的电脑死机和重启也是因为干扰造成的,这些干扰既有来自机箱内部CPU风扇、机箱风扇、显卡风扇、显卡、主板、硬盘的干扰,也有来自外部的动力线,变频空调甚至汽车等大型设备的干扰。如果我们主机的搞干扰性能差或屏蔽不良,就会出现主机意外重启或频繁死机的现象

关机自动重启

1、进入CMOS,在电源管理菜单中,PME Event Wake up(PME事件唤醒)应为Disable,2、点我的电脑,属性,高级,设置,关闭系统失败自动重启功能。3、软件不兼容,常常会引起关机重起的问题,这是XP的新机制。解决办法:右键点击“我的电脑”,选属性。选择“高级”选项卡,找到“启动和故障恢复”,点击旁边的“设置”按钮。去掉“系统失败”中的“自动重新启动”前的对勾(如果你用的仅仅是XP,你可以将你看到的所有的对勾都取消了,这样可以加快XP的启动速度)。 4、进安全模式,如果关机后不再重启,继续检查系统原因,如果关机后一样重启,更换电源试试

自动重启、关机等怪异现象处理方法:

软件(先易后难)

①开始→控制面板→系统→高级→启动和故障恢复→设置→系统失败→去掉自动重新启动→确定

②进入按键(主板不同,键值不同,可参阅下文)进入BIOS,在电源管理菜单中,PME Event Wake up(PME事件唤醒)应为Disable(禁用)即可。也可以设置BIOS出厂默认值来还原(参阅下文↙)。

③开机按F8键,进安全模式,如果关机后不再重启,可以再重启,按F8键进入选择菜单,点选最后一次正确配置重启。

④开机马上自动关机或者重新启动等故障,一般是由于Wininitexe或Vmm32vxd文件的损坏所造成的。可以从正常的 *** 作系统中复制它们到C:\Windows\system32系统文件下即可。

⑤可以在注册表设置一下,避免无端自动关机。开始→运行→输入:regedit 回车打开注册表,定位到以下位置:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon 将右边的键值:PowerdownAfterShutdown 改为1(双击此键值,将其中的数值数据改为1)刷新一下(F5键)可生效。

⑦右键点击我的电脑→管理→设备管理器→计算机→右键点击ACPIUniprocessor PC→更新驱动程序→从列表或指定位置安装(高级)→下一步→不要搜索。我要自己选择要安装驱动程序→下一步→选中Advaanced Configuration and Power Inerface(ACPI)PC→下一步直至完成设备驱动更换结束。

硬件(先软后硬)

①电脑运行中出现自动重启或异常关机一般是由于温度过高、电脑感染恶意程序导致的。可以尝试使用软件检测系统温度,杀毒来解决。

②如进入安全模式正常,使用最后一次正确配置重启之后故障依旧,可更换电源(功率不够)主板。

③电脑买回来一年以上,从来没有拆机箱清理过通风通道,不妨打开机箱后盖清理一下尘埃。

参考资料:

系统安装·进入BIOS一览表·芝麻开门(可以使用 谷歌 搜索引擎找到此博文)

参考资料:

维护电脑·自动关机排除法·各个击破(使用 谷歌 搜索找到此博文)

参考资料:

把鼠标悬停在自己的账号上,稍后出菜单,再点击右边的Hi图标就可以看到了。

一般来说都是晶振那部分电路的问题,如果仿真用的是这个电路板,烧进程序之后也是这个电路板,那就不是显示部分的硬件电路问题。

不知道你用的是什么仿真器,仿真时用的时钟是从哪里来的(板子上的晶振还是仿真器上自己设置的时钟值。)

你仿真时候,设置的晶振是多少?要跟实际的晶振一致。否者时序不一样白费了。比如说,仿真时候用的时钟是软件设定的,那可能你设置错误为比12M大的时钟,换成实际电路之后,延时的时间还是按照原先的时钟,那本来延时05秒的变成了5秒,你就等着它慢慢得变化吧!

或者你的晶振电路没焊好。

“开始”菜单,“运行”,输入“servicesmsc"进入服务,开启”Wireless Zero Configuration”,并且可以选择在后面的“恢复”选项里面三个都选择“失败后重新启动”!

首先,检查在无线网卡属性页面,确保 “用Windows配置我的无线网络设置”在勾选状态。

其次,在“控制面板”->”管理工具”->”计算机管理”->“设备管理器”点击“查看”菜单中的“显示隐藏的设备”,找到其中的“非即插即用驱动程序中”,找到“NDIS 用户模式 I/O 协议”,双击打开属性对话框,选择“驱动程序”选项卡,你会发现,当前状态是“已停止”,选择下面的启动栏中的下拉列表,并且选择类型为“自动”,点击确定按钮。

最后,在上面这些工作做完后,运行“msconfig”找到启动项,找一下你装的第三方无线网络配置管理服务,把可疑的自动启动关掉,让它不再开机启动。保存后,重启电脑,OK!这一步最关键

使用电脑多长时间了?是否打开机箱清理过尘埃?可能是通风不畅,引起系统自我保护关机。

尘埃多了,也会引起静电导致不能正常开机。看相关清理静电的视频教程。

自动重启、关机等怪异现象处理方法:

一、软件

①开始→控制面板→系统→高级→启动和故障恢复→设置→系统失败→去掉自动重新启动→确定

②进入按键(主板不同,键值不同,可参阅下文)进入BIOS,在电源管理菜单中,PME Event Wake up(PME事件唤醒)应为Disable(禁用)即可。也可以设置BIOS出厂默认值来还原。

③开机按F8键,进安全模式,如果关机后不再重启,可以再重启,按F8键进入选择菜单,点选最后一次正确配置重启。

④开机马上自动关机或者重新启动等故障,一般是由于Wininitexe或Vmm32vxd文件的损坏所造成的。可以从正常的 *** 作系统中复制它们到C:\Windows\system32系统文件下即可。

⑤关机的时候会保存用户的设置,比如关机声音异常也会导致关不了机的。此时不妨将关机声音设置为无。

⑥可以在注册表设置一下,避免无端自动关机。开始→运行→输入:regedit 回车打开注册表,定位到以下位置:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon 将右边的键值:PowerdownAfterShutdown 改为1(双击此键值,将其中的数值数据改为1)刷新一下(F5键)可生效。

⑦右键点击我的电脑→管理→设备管理器→计算机→右键点击ACPIUniprocessor PC→更新驱动程序→从列表或指定位置安装(高级)→下一步→不要搜索。我要自己选择要安装驱动程序→下一步→选中Advaanced Configuration and Power Inerface(ACPI)PC→下一步直至完成设备驱动更换结束。

参考资料:

系统安装·进入BIOS一览表·芝麻开门(可以使用 谷歌 搜索引擎找到此博文)

二、硬件

①电脑运行中出现自动重启或异常关机一般是由于温度过高、电脑感染恶意程序导致的。可以尝试使用软件检测系统温度,杀毒来解决。

②如果进入安全模式正常,使用最后一次正确配置重启之后故障依旧,可以更换电源(功率不够)、主板(电容损坏)。

③电脑买回来一年以上,从来没有拆机箱清理过通风通道,不妨打开机箱后盖清理一下尘埃(动手能力差的可以到维修店进行保养)。

参考资料:

维护电脑·自动关机排除法·各个击破(使用 谷歌 搜索找到此博文)

在排除病毒作怪的情况下,一般是由于安装的是GHOST版或是其他改动版的 *** 作系统,因为事先集成了大量不适用于你的硬件设备的程序程序导致系统不能正确识别并加载系统必须的硬件设备所致再或就是系统里存在有功能重复的软件引起冲突(比如安装了2款或2款以上的杀软和防火墙,广告屏蔽)所致,重装原版镜像安装版的 *** 作系统就可以纠正此类错误不想重装就试试卸载掉安装了不兼容驱动的设备,开机自动硬件设备后,重新安装你自己下载的能过微软数字签名认证的驱动程序(WHQL),然后再次重启电脑看看有无改善如确认不是系统或软件方面的问题,则需要按以下顺序测试硬件,首先是内存可能性最大,然后是CPU,之后是硬盘,最后是显卡,主板基本不会蓝屏。(xyz5819原创回复,欢迎复制)另外散热不良机器过热也会突然死机或重启甚至直接关机,

友情提示: 驱动能用就好,一定不要盲目追新否则安装了不被兼容的驱动后会造成系统运行不稳定,经常会出现蓝屏死机现象(xyz5819原创回复,欢迎复制)

以上就是关于帮忙看一段C代码 图像处理方面全部的内容,包括:帮忙看一段C代码 图像处理方面、望高手指点一下.跪求.(电脑关机重启)、笔记本电脑滴滴报警隔一秒响一次,一会自动关机,今天用水擦了擦等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10631302.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存