windows32位excel下载哪个?

264 2024-03-10 02:14

一、windows32位excel下载哪个?

没有单独的EXCEL和WORD下载。但是,以下可完美解决问题。搜索:OFFICE侠义下载即可,内有多个版本的OFFICE软件,是永久性使用的.(包含完整WORD、EXCEL、POWERPOINT、ACCESS)支持WIN7、WIN8、XP 32位和64位可完美解决问题按提示,安装完成即可永久使用

二、windows32位怎么打开bat?

bat文件打开方法: 打开桌面左下角【开始菜单】,在右边列表中找到【控制面板】选项,点击进入。

进入控制面板,在下发列表找到【系统和安全】选项,打开。进入系统和安全选项界面,点击下方的【系统】选项,进入系统属性界面。进入系统属性栏,点击左上角菜单栏里的【高级系统设置】选项。在打开系统属性对话框上方选择【高级】选项,然后点击高级界面下方的【环境变量】。进入环境变量对话框,在administrator用户变量下方选择【新建】,在弹出的新建用户变量对话框,用户名填写【%path%】,变量值填写【C:/windows/system32】。用户变量设置成功,点击系统变量下方的【path】,在选择编辑,然后把【%path%】添加进去保存即可。

三、windows32和62位的区别?

支持的内存不同

32位的操作系统,最多支持4G的内存,实际内存为3.25G;64位系统支持4G、8G、16G、32G、64G、128G、256G内存,理论上可以无限支持,只要你主板上有足够的内存条。

支持的处理器和软件不同

64位的操作系统支持基于64位的处理器,而32位的系统却不能完全支持64位的处理器。而32位的操作系统,支持基于32位的软件,不能运行64位的软件;而64位的系统一般这两种类型的都支持,基本上与各种软件都兼容。32和64表示CPU可以处理最大位数,一次性的运算量不一样,理论上64位的会比32位快1倍。另外需要说明的是系统分为32位和64位,没有62位

四、windows32位怎么样才能够改装64位系统?

要将32位Windows操作系统改装为64位Windows操作系统,首先需要确保您的计算机硬件支持64位系统。

然后,您需要创建一个64位的安装介质,刻录到DVD或USB驱动器中。

在启动计算机时,进入BIOS设置,将启动顺序更改为启动DVD或USB驱动器。

接下来,按照安装步骤进行操作,选择自定义安装选项,删除32位系统并安装64位系统。

最后,您需要重新安装所有软件和驱动程序,以确保它们与64位系统兼容。在安装完毕后,您将获得更好的性能和更好的体验。

五、汇编BL中高4位和低4位内容互换?

MOV BH,BL ;需借用BH寄存器,先复制BL值MOV CL,4 ;CL为移位次数SHR BH,CL ;移位后BH内为原来的高4位移到了低4位SHL BL,CL ;移位后BL内为原来的低4位移到了高4位OR BL,BH ;合并,结果在BL中

六、关于汇编语言中的标志位?

标志名 设置 nv(清除) ov(溢出) 方向 dn(减) up(增) 中断 ei(启用) di(禁用) 正负 ng(负) pl(正) 零 zr(0) nz(非0) 辅助进位 ac(进位) na(不进位) 奇偶校验 pe(偶校验) po(奇校验) 进位 cy(进位) nc(不进位)

七、64位win7如何运行汇编?

对于32位的汇编,win764位编译运行没问题。 对于dos下的16位汇编,可以下载个dosbox.

八、win764位下怎么汇编操作?

借助DOSBox; 一. DOSBox软件,调试程序二. 开始安装,双击打开DOSBox软件,按步骤进行安装,安装目录任选三. 安装成功后打开DOSBox, 就可以看到一个非常熟悉的界面了,和电脑里的命令提示符DOS窗口差不多四. 安装完DOSBox后,我们就能运行汇编后的程序了

九、51单片机CY位与汇编CF位的区别?

51单片机Cy位即PSW.7,是51单片机算数运算中的进位借位标志,根据算数运算结果由系统置位或复位,也可以编程置位或复位。置位指令为:SETB C;复位指令为CLR C。

51单片机中没有CF位,所以区别是无从说起的。

十、32位浮点数乘法汇编算法?

写汇编的基本已经绝迹了现在,就老一辈的有些在用

#include <stdio.h>

#include <sys/time.h>

#define INIT_TIMER_VALIABLE \

struct timeval tpstart,tpend; \

float timeuse;

#define START_TIMER gettimeofday(&tpstart,NULL);

#define END_PRINTF_TIMER(name) \

gettimeofday(&tpend,NULL); \

timeuse=(tpend.tv_sec*1000*1000+tpend.tv_usec)-(tpstart.tv_sec*1000*1000+tpstart.tv_usec); \

printf("func :%s:time use(us) %f\n",name,timeuse);

float vfp_operate(float f1, float f2)

{

float sum=0;

__asm__ __volatile__(

"vmov s1, %1\n"

"vmov s2, %2\n"

"fmuls s0, s1, s2\n"

"vmov %0, s0\n"

:"=r"(sum)

:"r"(f1),"r"(f2)

);

return sum;

}

int main()

{

float f1,f2;

float result;

INIT_TIMER_VALIABLE

printf("input float data1:");

scanf("%f",&f1);

printf("input float data2:");

scanf("%f",&f2);

START_TIMER

result=f1*f2;

END_PRINTF_TIMER("use system function")

printf("result is %f\n",result);

START_TIMER

result=vfp_operate(f1,f2);

END_PRINTF_TIMER("use vfp_operate")

printf("result is %f\n",result);

}

/*

测试结果:

./vfp_helloworld

input float data1:0.125

input float data2:1.684

func :use system function:time use(us) 12.000000

result is 0.210500

func :use system function:time use(us) 5.000000

result is 0.210500

*/

测试使用编译选项 :

源代码:

#include <stdio.h>

int main()

{

float f1,f2;

printf("input float data1:");

scanf("%f",&f1);

printf("input float data2:");

scanf("%f",&f2);

printf("float %f x %f =%f\n", f1,f2,f1*f2);

}

编译选项:(只是多增加了-mfloat-abi=softfp 测试发现=sofltfp和=hard编译出的汇编一样)

arm-none-linux-gnueabi-gcc vfp_helloworld.c -S arm-none-linux-gnueabi-gcc vfp_helloworld.c -S -o vfp_helloworld.asm

-mfloat-abi=softfp -o vfp_helloworld.asm

.cpu arm10tdmi .cpu arm10tdmi

.eabi_attribute 27, 3 .fpu softvfp

.fpu vfp .eabi_attribute 20, 1

.eabi_attribute 20, 1 .eabi_attribute 21, 1

.eabi_attribute 21, 1 .eabi_attribute 23, 3

.eabi_attribute 23, 3 .eabi_attribute 24, 1

.eabi_attribute 24, 1 .eabi_attribute 25, 1

.eabi_attribute 25, 1 .eabi_attribute 26, 2

.eabi_attribute 26, 2 .eabi_attribute 30, 6

.eabi_attribute 30, 6 .eabi_attribute 18, 4

.eabi_attribute 18, 4 .file "vfp_helloworld.c"

.file "vfp_helloworld.c" .section .rodata

.section .rodata .align 2

.align 2 .LC0:

.LC0: .ascii "input float data1:\000"

.ascii "input float data1:\000" .align 2

.align 2 .LC1:

.LC1: .ascii "%f\000"

.ascii "%f\000" .align 2

.align 2 .LC2:

.LC2: .ascii "input float data2:\000"

.ascii "input float data2:\000" .global __aeabi_f2d

.align 2 .global __aeabi_fmul <<<------这里说明软件浮点运算。

.LC3: .align 2

.ascii "float %f x %f =%f\012\000" .LC3:

.text .ascii "float %f x %f =%f\012\000"

.align 2 .text

.global main .align 2

.type main, %function .global main

main: .type main, %function

.fnstart main:

.LFB2: .fnstart

@ args = 0, pretend = 0, frame = 16 .LFB2:

@ frame_needed = 1, uses_anonymous_args = 0 @ args = 0, pretend = 0, frame = 16

stmfd sp!, {fp, lr} @ frame_needed = 1, uses_anonymous_args = 0

.save {fp, lr} stmfd sp!, {r4, r5, r6, r7, r8, fp, lr}

.LCFI0: .save {r4, r5, r6, r7, r8, fp, lr}

.setfp fp, sp, #4 .LCFI0:

add fp, sp, #4 .setfp fp, sp, #24

.LCFI1: add fp, sp, #24

.pad #32 .LCFI1:

sub sp, sp, #32 .pad #36

.LCFI2: sub sp, sp, #36

ldr r0, .L3 .LCFI2:

bl printf ldr r0, .L3

sub r3, fp, #8 bl printf

ldr r0, .L3+4 sub r3, fp, #32

mov r1, r3 ldr r0, .L3+4

bl scanf mov r1, r3

ldr r0, .L3+8 bl scanf

bl printf ldr r0, .L3+8

sub r3, fp, #12 bl printf

ldr r0, .L3+4 sub r3, fp, #36

mov r1, r3 ldr r0, .L3+4

bl scanf mov r1, r3

flds s15, [fp, #-8] bl scanf

fcvtds d5, s15 ldr r3, [fp, #-32] @ float

flds s15, [fp, #-12] mov r0, r3

fcvtds d6, s15 bl __aeabi_f2d

flds s14, [fp, #-8] mov r5, r0

flds s15, [fp, #-12] mov r6, r1

fmuls s15, s14, s15 <<<-----直接使用硬件浮点指令 ldr r3, [fp, #-36] @ float

fcvtds d7, s15 mov r0, r3

fstd d6, [sp, #0] bl __aeabi_f2d

fstd d7, [sp, #8] mov r7, r0

ldr r0, .L3+12 mov r8, r1

fmrrd r2, r3, d5 ldr r3, [fp, #-32] @ float

bl printf ldr r2, [fp, #-36] @ float

sub sp, fp, #4 mov r0, r3

ldmfd sp!, {fp, pc} mov r1, r2

.L4: bl __aeabi_fmul <<<------这里调用软件浮点运算。

.align 2 mov r3, r0

.L3: mov r0, r3

.word .LC0 bl __aeabi_f2d

.word .LC1 mov r3, r0

.word .LC2 mov r4, r1

.word .LC3 stmia sp, {r7-r8}

.LFE2: str r3, [sp, #8]

.fnend str r4, [sp, #12]

.size main, .-main ldr r0, .L3+12

.ident "GCC: (Sourcery G++ Lite 2009q1-203) 4.3.3" mov r2, r5

.section .note.GNU-stack,"",%progbits mov r3, r6

bl printf

sub sp, fp, #24

ldmfd sp!, {r4, r5, r6, r7, r8, fp, pc}

.L4:

.align 2

.L3:

.word .LC0

.word .LC1

.word .LC2

.word .LC3

.LFE2:

.fnend

.size main, .-main

.ident "GCC: (Sourcery G++ Lite 2009q1-203) 4.3.3"

.section .note.GNU-stack,"",%progbits

摘自:RM的pdf文档 的说明

浮点运算的支持

ARM 处理器内核不包含浮点硬件。 必须使用以下两种方法之一,另行提供对浮点算法的支持:

在软件中,使用浮点库 fplib。 此库提供了执行浮点运算可以调用的函数,无需额外的硬件。 请参阅《库指南》 中第 4-2 页的软件浮点库 fplib。

在硬件中,使用含 VFP 硬件协处理器的 ARM 处理器内核来进行所需的浮点运算。 VFP 是执行 IEEE 浮点的协处理器体系结构,支持单精度和双精度,但不支持扩展精度。

Note

在实际编程中,VFP 中的浮点运算实际是组合使用硬件(执行常见的情况)和软件(处理不常见的情况和导致异常的情况)执行的。 请参阅VFP 支持。

Example 5.2 是一个用 C 执行浮点算法的函数,用以说明浮点算法的软件和硬件支持的不同。

Example 5.2. 浮点运算

float foo(float num1, float num2)

{

float temp, temp2;

temp = num1 + num2;

temp2 = num2 * num2;

return temp2-temp;

}

如果使用命令行选项 --cpu 5TE --fpu softvfp 编译Example 5.2 的 C 代码,则编译器生成的机器代码的反汇编如Example 5.3 所示。 在本示例中,在软件中通过调用库例程(如 __aeabi_fmul)来执行浮点算法。

Example 5.3. 软件中对浮点运算的支持

||foo|| PROC

PUSH {r4-r6, lr}

MOV r4, r1

BL __aeabi_fadd <<<<----直接向加

MOV r5, r0

MOV r1, r4

MOV r0, r4

BL __aeabi_fmul <<<<<----然后相乘

MOV r1, r5

POP {r4-r6, lr}

B __aeabi_fsub

ENDP

如果使用命令行选项 --fpu vfp 编译Example 5.2 的 C 代码,则编译器生成的机器代码的反汇编如Example 5.4 所示。 在本示例中,在硬件中通过浮点算法指令(如 VMUL.F32)来执行浮点算法。

Example 5.4. 硬件中对浮点运算的支持

||foo|| PROC

VADD.F32 s2, s0, s1

VMUL.F32 s0, s1, s1

VSUB.F32 s0, s0, s2

BX lr

ENDP

在实际编程中,使用硬件支持浮点算法的代码更为紧凑,并提供比在软件中执行浮点算法的代码更佳的性能。 但是,浮点算法的硬件支持需要 VFP 协处理器。

缺省情况下,如果有 VFP 协处理器,则会生成 VFP 指令。 如果没有 VFP 协处理器,则编译器会生成调用软件浮点库 fplib 的代码,用于执行浮点运算。fplib 是 C 库 RealView Development Suite 标准分发的组成部分。

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
点击我更换图片