arm中的饱和指令

来源:互联网 发布:达人如何挂淘宝 编辑:程序博客网 时间:2024/04/27 18:35

转自--- http://www.cnblogs.com/c6000/archive/2010/11/08/1872223.html

ARMv6 及更高版本中推出了饱和指令:SSAT 和 USAT, SSAT16 和 USAT16

有符号饱和到任何位位置和无符号饱和到任何位位置,可选择在饱和前进行移位。

SSAT 可将有符号值饱和到有符号范围内。

USAT 可将有符号值饱和到无符号范围内。

语法

op{cond} Rd, #sat, Rm{, shift}

其中:

op

是 SSAT 或 USAT

cond

是一个可选的条件代码(请参阅条件执行)。

Rd

是目标寄存器。 Rd 不能为 r15。

sat

指定要饱和到的位位置,SSAT 的范围在 1 到 32 之间,USAT 的范围在 0 到 31 之间。

Rm

是包含操作数的寄存器。 Rm 不能为 r15。

shift

是一个可选的移位。 必须为下列项之一:

ASR #n

其中,n 的范围为 1-32 (ARM) 或 1-31 (Thumb-2)

LSL #n

其中,n 的范围为 0-31。

操作

SSAT 指令会先进行指定的移位,然后将结果饱和到有符号范围 –2sat–1 ≤ x ≤ 2sat–1 –1。

USAT 指令会先进行指定的移位,然后将结果饱和到无符号范围 0 ≤ x ≤ 2sat – 1。

条件标记

如果发生饱和,则这些指令设置 Q 标记。 若要读取 Q 标记的状态,请使用 MRS 指令(请参阅MRS)。

体系结构

这些 ARM 指令可用于 ARMv6 及更高版本。

这些 32 位 Thumb 指令可用于 ARMv6T2 及更高版本。

这些指令均无 16 位 Thumb 版本。

示例

    SSAT    r7, #16, r7, LSL #4    USATNE  r0, #7, r5
SSAT16 和 USAT16

并行半字饱和指令。

SSAT16 可将有符号值饱和到有符号范围内。

USAT16 可将有符号值饱和到无符号范围内。

语法

op{cond} Rd, #sat, Rn

其中:

op

是下列项之一:

SSAT16

有符号饱和。

USAT16

无符号饱和。

cond

是一个可选的条件代码(请参阅条件执行)。

Rd

是目标寄存器。

sat

指定要饱和到的位位置,SSAT16 的范围在 1 到 16 之间,USAT16 的范围在 0 到 15 之间。

Rn

是存放操作数的寄存器。

不要将 r15 用作 Rd 或 Rn

操作

有符号和无符号半字饱和任何位位置。

SSAT16 指令可将每个有符号半字饱和到有符号范围 –2sat–1 ≤ x ≤ 2sat–1 –1 内。

USAT16 指令可将每个有符号半字饱和到无符号范围 0 ≤ x ≤ 2sat –1 内。

条件标记

只要有半字发生饱和,这些指令就会设置 Q 标记。 若要读取 Q 标记的状态,请使用 MRS 指令(请参阅MRS)。

体系结构

这些 ARM 指令可用于 ARMv6 及更高版本。

这些 32 位 Thumb 指令可用于 ARMv6T2 及更高版本(ARMv7-M 架构除外)。

这些指令均无 16 位 Thumb 版本。

示例

    SSAT16  r7, #12, r7    USAT16  r0, #7, r5

不正确的示例

    SSAT16  r1, #16, r2, LSL #4 ; shifts not permitted with halfword saturations

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 前交叉韧带增粗怎么办 膝盖前交叉韧带损伤怎么办 狗的腿肌肉拉伤怎么办 胳膊上的筋拉伤怎么办 肩周炎胳膊抬不起来怎么办 脖子上的筋拉伤怎么办 脚踝骨扭伤肿了怎么办 脚扭伤肿起来了怎么办 月经量特别少该怎么办 月经血沾床单上怎么办 月经弄到棉被上怎么办 血弄床单上干了怎么办 不小心吃了指甲怎么办 月经没有干净同房了怎么办 撞红了怎么办要吃药吗 自己长得太丑怎么办 长得丑特别自卑怎么办 手挤了有淤血怎么办 手指肚夹淤血了怎么办 指甲被夹了变黑怎么办 孩子手指夹肿了怎么办 指甲压了有淤血怎么办 挤到手指有淤血怎么办 指甲上有黑线是怎么办 指甲被压了要掉怎么办 脚趾肿了有脓怎么办 手指甲上的死皮怎么办 手被东西砸肿了怎么办 手被夹住有淤血怎么办 指头被车门夹了怎么办 手背夹伤了肿了怎么办 剪完指甲边肿了怎么办 手心长水泡又痒怎么办 指甲肿了有脓怎么办 手指肿了有脓包怎么办 手指头肿了有脓怎么办 指甲弄肿了很痛怎么办 小孩手夹了肿了怎么办 宝宝夹到手肿了怎么办 小孩手指夹紫了怎么办 手指被夹了,没力怎么办