<< (Bitwise Left Shift) operator

Spatial Analyst のライセンスで利用可能。

Image Analyst ライセンスで利用できます。

概要

Performs a Bitwise Left Shift operation on the binary values of two input rasters.

Bitwise Left Shift illustration
OutRas = Raster("InRas1") << 1

ディスカッション

ラスター入力で演算子を使用すると、結果はラスターになります。ただし、すべての入力値が数字の場合、結果は数字になります。

複数の演算子が式に使用されている場合、それらは必ずしも左から右への順に実行されるわけではありません。優先順位値が最も高い演算子が最初に実行されます。演算子の優先順位に関する詳細については、「演算子の優先順位のテーブル」をご参照ください。実行順序の制御には、括弧が使用できます。

The bitwise operators work on 32-bit integers.

If floating-point values are input, they are converted to integer values through truncation before the bitwise operation is performed. The output values are always integer.

Two inputs (rasters or numbers) are necessary for the bitwise operation to take place.

The order of input is relevant in the Bitwise Left Shift operation.

Binary values are stored in two's complement.

The leftmost bit position is reserved for the sign of the value (positive or negative). If the integer is positive, the bit position is zero; if it's negative, the bit position is one.

The Bitwise Left Shift operation does no wrapping of bits. The leftmost bit is dropped.

Another way to perform the Bitwise Left Shift operation is a <<= b, which is an alternative way to write a = a << b.

両方の入力がシングル バンド ラスターの場合、または入力の片方が定数の場合は、出力はシングル バンド ラスターになります。

両方の入力がマルチバンド ラスターの場合、または入力の片方が定数の場合は、出力はマルチバンド ラスターになります。それぞれのマルチバンド入力で、バンドの数は同一の必要があります。

演算子は、1 つの入力に含まれる各バンドについて、他の入力に含まれる対応バンドに対して演算を実行します。入力の 1 つがマルチバンド ラスターで、もう 1 つの入力が定数の場合、演算子はマルチバンド入力に含まれる各バンドについて、定数値との演算を実行します。

構文

in_raster_or_constant1 << in_raster_or_constant2
オペランド説明データ タイプ
in_raster_or_constant1

シフト処理の実行対象となる入力ラスター。

入力値には、整数または浮動小数点が使用できます。ただし、浮動小数点値は、ビット演算を実行する前に整数に変換されます。

If the first input is a raster and the second is a scalar, an output raster is created with each input raster value being bitwise left shifted by the scalar value.

Raster Layer | Constant
in_raster_or_constant2

The input raster defining the number of positions to shift the bits.

入力値には、整数または浮動小数点が使用できます。ただし、浮動小数点値は、ビット演算を実行する前に整数に変換されます。

If the first input is a scalar and the second is a raster, an output raster is created with each input raster value defining the bitwise left shift for the scalar value.

Raster Layer | Constant

戻り値

名前説明データ タイプ
out_raster

出力ラスター オブジェクト。

The cell values are the result of a Bitwise Left Shift operation on the inputs.

Raster

コードのサンプル

<< (Bitwise Left Shift) example 1 (Python window)

This sample performs a Bitwise Left Shift operation on two input rasters.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outBitwiseLS = Raster("degs") << Raster("negs")
outBitwiseLS.save("C:/sapyexamples/output/outbitls.tif")
<< (Bitwise Left Shift) example 2 (stand-alone script)

This sample performs a Bitwise Left Shift operation on two input rasters.

# Name: Op_BitwiseLeftShift_Ex_02.py
# Description: Performs a Bitwise Left Shift operation on the binary
#     values of two input rasters
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster1 = Raster("degs")
inRaster2 = Raster("negs")

# Execute BitwiseLeftShift
outBitwiseLShift = inRaster1 << inRaster2

# Save the output 
outBitwiseLShift.save("C:/sapyexamples/output/outlshift")

関連トピック